Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从用户控件调用父页面中的javascript函数?_Javascript_Asp.net - Fatal编程技术网

如何从用户控件调用父页面中的javascript函数?

如何从用户控件调用父页面中的javascript函数?,javascript,asp.net,Javascript,Asp.net,我有一些名为myUserControl的ASP.NET用户控件 我还有一些名为myAspxPage的aspx页面 myAspxPage包含myUserControl并且myAspxPage包含以下javascript函数: function SetProgressBar() { //some logic } 当按下此按钮时,我需要调用SetProgressBarjavascipt函数: <asp:LinkButto

我有一些名为
myUserControl
的ASP.NET用户控件

我还有一些名为
myAspxPage
的aspx页面

myAspxPage
包含
myUserControl
并且
myAspxPage
包含以下javascript函数:

     function SetProgressBar() 
     {
          //some logic          
     }
当按下此按钮时,我需要调用
SetProgressBar
javascipt函数:

 <asp:LinkButton ID="prevItem" runat="server" ToolTip="previous" Style="color: #000000;" OnClientClick="to call SetProgressBar function"> << </asp:LinkButton>
这是:

OnClientClick="SetProgressBar()"
但是上面的例子不起作用

所以我的问题是如何从用户控件调用父页面中的javascript函数

我想如果你加上

ClientIdMode="static"
单击按钮并取出OnClientClick=“”,使其看起来像这样:

 <asp:LinkButton ID="prevItem" runat="server" ToolTip="previous" Style="color: #000000;" ClientIdMode="static"> << </asp:LinkButton>
document.getElementById("prevItem").onclick = function SetProgressBar(){

// some logic

}

这应该是可行的…

当用户控件添加到任何aspx页面中时,它不是一个单独的页面,所有内容都呈现为单个页面,因此简言之,aspx页面和用户控件之间没有父子关系

您应该能够从usercontrol调用任何javascript函数

如果使用onClientClient=调用函数,则不需要clientmode=static

因此,要测试函数是否被触发,请在函数的第一行输入一个警报,看看它是否被触发。

“上面的示例不起作用”-基于什么?第二种变体很好。
document.getElementById("prevItem").onclick = function SetProgressBar(){

// some logic

}