2017-08-25 71 views
1

我想触发服务器上的onclick事件并在客户端调用函数(notBrowserClose())。Javascript事件和函数触发器

<asp:Button ID="ButtonSave0" runat="server" OnClick="notBrowserClose(); ButtonSave_Click" Text="Save all" Style="margin-left: 860px" Width="170px" /> 

这段代码不起作用,但你知道我想做什么。

+0

请尝试下面的代码.... – jANVI

+0

分享您的JavaScript代码。 –

回答

0
<asp:Button ID="ButtonSave0" runat="server" OnClientClick="notBrowserClose();" OnClick="ButtonSave_Click" Text="Save all" Style="margin-left: 860px" Width="170px" /> 
+0

我曾尝试过,但它没有工作,功能没有得到触发。 –

+0

@jANVI你能否详细说明侯改变了什么? – thomaux

+0

添加OnClientClick() – jANVI

0

你应该区分OnClick & OnClientClick,前者用于服务器端事件处理程序,后者用于客户端的JS事件处理程序:

<asp:Button ID="ButtonSave0" runat="server" 
OnClick="ButtonSave_Click" OnClientClick="notBrowserClose();" 
Text="Save all" Style="margin-left: 860px" Width="170px" /> 

参考:

Button Class (System.Web.UI.WebControls)

+0

我试过这个,它不工作,函数notBrowserClose(){ browserClose = false; alert(“tr”); } 我有一个突破点,但它没有去那里.. –

+0

@IbrahimAweidah是'alert(“tr”)'通过显示消息执行? –

+0

不是它没有,只有onbeforeunload方法被执行: 功能areYouSure(){ 如果(allowPrompt){ VAR confMessage =“******************* ******************** \ n \ n在离开预算页面之前,请检查是否保存了所有内容。\ n \ n ********* **********“; 返回confMessage; } } window.onbeforeunload = areYouSure; 所以在这个警报后,我没有得到“tr”警报。 –

0

也许你可以试试这个使用jQuery click()如下图所示:

$('#<%=ButtonSave0.ClientID%>').click(function() { 
     // your code goes here 
     // if this alerts triggers your function is being called alright 
     alert('i am here !'); 
     // is this a variable ??? may be you can declare it first ? 
     browserClose = false; 
     alert("tr"); 
    }); 

Click()将事件处理程序绑定到“click”JavaScript事件,或在元素上触发该事件。 此外,您正在使用按钮的客户端ID,如上面的代码所示。

希望这会有所帮助!