2017-06-19 58 views
0

javascript函数我有脚本,在.ascx文件.JS功能:如何调用从.ascx文件

<script type ="text/javascript"> 
function CheckButton(){ 
    if($('#plcholder').length > 0){ 
     document.getElementById('<%= btIntoBasketAll.ClientID %>').style.display = 'inherit'; 
    } else { 
     document.getElementById('<%= btIntoBasketAll.ClientID %>').style.display = 'none'; 
    } 
} 
</script> 

我想从.aspx文件中的TabPanel的OnClientClick属性称之为:

<asp:TabContainer ID="tabProductList" runat="server" ActiveTabIndex="0" OnActiveTabChanged="tabProductList_ActiveTabChanged" AutoPostBack="true"> 
         <asp:TabPanel ID="TabProductListCatalog" runat="server" HeaderText="<%$ Resources: Resource, TabProductListCatalog %>"> 
         </asp:TabPanel> 
         <asp:TabPanel ID="TabProductListPicture" runat="server" HeaderText="<%$ Resources: Resource, TabProductListPicture %>"> 
         </asp:TabPanel> 
         <asp:TabPanel ID="TabProductListList" runat="server" HeaderText="<%$ Resources: Resource, TabProductListList %>" OnClientClick="return CheckButton()"> 
         </asp:TabPanel> 
        </asp:TabContainer> 

但这不起作用。 TabPanels只是在浏览器中消失。

+0

“CheckButton”中的代码是否执行?你有没有尝试在那里放置一个'console.log'? –

+0

@DanDumitru它不会。这是一个问题 - 如何调用放在ascx中的aspx函数。 –

回答

0

尝试document.getElementById('<%= btIntoBasketAll.ClientID%>')。style.display ='block';

+0

这不是我想要的。当我用F5重新加载页面时隐藏工程。但是当我移动Tabs(ajax)之前,不是整个页面重新加载,因此我想隐藏的按钮只是不隐藏。我想我在OnClientClick中调用函数有问题。 –

+0

如果浏览器包含此函数CheckButton(),则在浏览器上呈现之后检查页面源。最终.ascx成为.aspx的一部分,所以它应该工作。这个.ascx控件可能不在第 –

+0

页上呈现,并且它在那里。 –