[英]JQuery custom event in ASP.Net User Control
我有一个包含一些复选框的ASP.Net用户控件,并且当单击其中一个复选框时,我想使用JQuery从用户控件中引发事件。 这是用户控件中我要引发事件的JQuery代码:
$(document).ready(function() {
$(':checkbox').click(function(){
$('#hfRemainingInstalls').trigger('CheckBoxClicked');
});
});
这是我试图订阅该事件的包含aspx页面中的JQuery代码:
$(document).ready(function() {
$("p").bind('CheckBoxClicked', function(e) {
alert("checkbox clicked");
});
});
当我单击复选框之一时,我再也看不到警报。 有人知道这可能是什么问题吗?
那么Id标签P和Id hfRemainingInstalls之间是否有关系
1:解决方案
$(':checkbox').click(function(){
$("p").trigger('CheckBoxClicked');
});
$(document).ready(function() {
$("p").bind('CheckBoxClicked', function(e) {
alert("checkbox clicked");
});
});
2:解决方案
$(':checkbox').click(function(){
$("#hfRemainingInstalls").trigger('CheckBoxClicked');
});
$(document).ready(function() {
$("#hfRemainingInstalls").bind('CheckBoxClicked', function(e) {
alert("checkbox clicked");
});
});
我确定您有ID问题。 呈现在诸如UserControls和MasterPages之类的容器元素内部的ASP.NET控件在呈现时会在id
属性前添加一些垃圾,以确保唯一性。 通常是类似“ ctl01_01_YourID”这样的内容,也就是说,您可能应该使用jQuery startsWith选择器...
$('input[id$=hfRemainingInstalls]').trigger('CheckBoxClicked');
如果找到该元素,以下内容将发出“ true”警报...
alert($('#hfRemainingInstalls').length > 0);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.