C# Jquery类及其函数
我正在asp.net中开发讨论面板,在其中我通过javascripts绘制了一些跨度C# Jquery类及其函数,c#,javascript,jquery,asp.net,ajax,C#,Javascript,Jquery,Asp.net,Ajax,我正在asp.net中开发讨论面板,在其中我通过javascripts绘制了一些跨度 $(“#commenttr”)。在(“+out[i]+”投票赞成-投票反对“+同意[i+1]+”)之后 但是当我调用jquery函数时 $(".plblAgreeComment").click(function(){ alert("hi"); } 它不起作用。请帮帮我。说明 您需要jQuery.live()或.on()方法将事件绑定到动态创建的html 根据您使用的jQuery版本,选择.live()
$(“#commenttr”)。在(“+out[i]+”投票赞成-投票反对“+同意[i+1]+”)之后代码>
但是当我调用jquery函数时
$(".plblAgreeComment").click(function(){
alert("hi");
}
它不起作用。请帮帮我。说明
您需要jQuery.live()
或.on()
方法将事件绑定到动态创建的html
根据您使用的jQuery版本,选择.live()
或.on()
.live()从jQuery 1.3开始提供。为当前和将来与当前选择器匹配的所有元素附加事件处理程序
.on()从jQuery 1.7开始提供。将一个或多个事件的事件处理程序函数附加到选定元素
样品
更多信息
更新:说明
您需要jQuery.live()
或.on()
方法将事件绑定到动态创建的html
根据您使用的jQuery版本,选择.live()
或.on()
.live()从jQuery 1.3开始提供。为当前和将来与当前选择器匹配的所有元素附加事件处理程序
.on()从jQuery 1.7开始提供。将一个或多个事件的事件处理程序函数附加到选定元素
样品
更多信息
更新:在
上使用jQuery,因为您正在动态地将这些项添加到DOM中
$(function(){
$("body").on("click",".plblAgreeComment",click(function(){
alert("hi");
});
});
上的将适用于当前元素和未来元素
从jQuery 1.7开始,可以使用上的,如果您使用的是较旧版本的jQuery,则应选中上的live
使用jQuery,因为您正在动态地将这些项添加到DOM中
$(function(){
$("body").on("click",".plblAgreeComment",click(function(){
alert("hi");
});
});
上的将适用于当前元素和未来元素
on
从jQuery 1.7开始提供,如果您使用的是较旧版本的jQuery,则应检查live
尝试使用以下语法中的.on
$(document).on('click', '.plblAgreeComment', function(){
alert("hi");
});
在上面的代码中,使用表格选择器而不是文档选择。尝试使用下面语法中的.on
$(document).on('click', '.plblAgreeComment', function(){
alert("hi");
});
在上面的代码中,使用表格选择器而不是文档选择。两件事。。在为行生成html时,类名中可能有一个额外的字符
class = \"plblAgreeCom
也许应该是:
class =\"plblAgreeCom
$(".plblAgreeComment").live("click", function(){
alert("hi");
}
或者在修改DOM之前附加click处理程序,在这种情况下:
$(".plblAgreeComment").click(function(){
alert("hi");
}
应该是:
class =\"plblAgreeCom
$(".plblAgreeComment").live("click", function(){
alert("hi");
}
两件事。。在为行生成html时,类名中可能有一个额外的字符
class = \"plblAgreeCom
也许应该是:
class =\"plblAgreeCom
$(".plblAgreeComment").live("click", function(){
alert("hi");
}
或者在修改DOM之前附加click处理程序,在这种情况下:
$(".plblAgreeComment").click(function(){
alert("hi");
}
应该是:
class =\"plblAgreeCom
$(".plblAgreeComment").live("click", function(){
alert("hi");
}
如果要将事件绑定到动态注入的DOM元素,则需要使用on
方法,以便将任何新元素绑定到该事件侦听器:
$(".plblAgreeComment").on("click", function(){
alert("hi");
}
注意:还有其他一些方法,例如live()
,可以实现类似的效果,但它们被弃用,取而代之的是上的,它可以处理每个场景中的这种情况。如果要将事件绑定到动态注入的DOM元素,您需要使用on
方法,以便将任何新元素绑定到该事件侦听器:
$(".plblAgreeComment").on("click", function(){
alert("hi");
}
注意:还有其他一些方法,例如live()
,可以实现类似的效果,但它们被弃用,取而代之的是上的,它可以处理每个场景的这种情况。。这里的答案不是live
;他的事件处理程序中有语法错误,缺少paren。而且,.live
是;您应该使用.on
或.delegate
!我在你写评论的同时更新了我的答案。通过现在添加,动态跨度不会产生:(@user1334569)你能提供一个JSFIDLE吗?你文章中的.on
示例对于动态插入DOM的元素不起作用。.live
不是这里的答案;他的事件处理程序中有一个语法错误,缺少paren。另外,.live
是;你应该使用.on
或.delegate
!I在您写评论的同时更新了我的答案。通过添加此选项,动态范围不会创建:(@user1334569您能提供一个JSFIDLE吗?您文章中的。
示例将不适用于动态插入DOM的元素。而不是转义所有“
您可以使用”
字符在“#comenttr”项后输入html代码。您可以使用”
字符在“#comenttr”项后输入html代码,而不是转义所有的”
字符;
在单击处理程序中。2..live
从jquery 1.7开始就被弃用。使用.delegate
或。在
上,现在通过添加它,动态跨度不会创建:(一、两件事,您缺少);
在单击处理程序中。2..live
从jquery 1.7开始就不推荐使用。请使用.delegate
或。在
上,通过立即添加此选项,动态范围不会创建:(通过立即添加此选项,动态范围不会创建:(@user1334569:我想你可能有一些脚本错误。请检查firebug控制台。投票结果来自firebug@user1334569:您在其他地方有一个console.debug(soemelement)。您可以发布一个JSFIDLE示例吗?通过现在添加它,动态跨度不会创建:(@user1334569:我想你可能有一些脚本错误。请检查firebug控制台。投票结果来自firebug@user1334569:在其他地方有一个console.debug(soemelement)。你能发布一个JSFIDLE示例吗?@user1334569检查你正在使用的jQuery版本。如果jQuery版本<1,你应该使用.delegate
。7@user