我有一个服务器端按钮
<asp:Button ID="btnSummary" runat="server" OnClick="btnSummary_Click" Text="Next" />
Run Code Online (Sandbox Code Playgroud)
我想使用其ID附加jQuery Click事件,而不是使用替代类属性方式.
我试图将click事件附加为:
$("#btnSummary").click(function()
{
alert("1");
});
Run Code Online (Sandbox Code Playgroud)
但是,它的click事件不会被触发.另外,我也试过了$("id[$btnSummary]").
有没有办法在没有按钮上的class属性的情况下使用jQuery在asp:button上附加click事件?
Rus*_*Cam 13
您可以在此处找到一些选项
编辑:
在阅读了对其他答案的评论之后,听起来你需要在ASP.NET AJAX的pageLoad中绑定onclick事件处理程序,以便它在每次回发时绑定,包括异步回发.另一方面,$(document).ready()仅在初始页面加载时绑定一次
function pageLoad(sender, args)
{
$("#<%=btnSummary.ClientID %>").click(function()
{
alert("1");
});
}
Run Code Online (Sandbox Code Playgroud)
Dave Ward写了一篇关于pageLoad和$(document).ready()之间区别的文章.
小智 9
将ClientIDMode ="Static"添加到您的asp:按钮,如下所示:
<asp:Button ID="Button1" runat="server" ClientIDMode="Static" Text="Button" />
Run Code Online (Sandbox Code Playgroud)
这将使ID保持不变.它禁用此控件的自动生成的名称.
以下是此参考:http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientid.aspx
-
$(document).ready(function() {
// put all your jQuery goodness in here.
});
Run Code Online (Sandbox Code Playgroud)
编辑:
由于它的服务器端控件和ID发生了变化,因此您需要使用变量动态更新每个页面加载的javascript.
| 归档时间: |
|
| 查看次数: |
65536 次 |
| 最近记录: |