这是我的JQuery代码,它(类切换)不工作。
我假设这是它的上下文,但是console.log()表明它是正确的元素。
// .dynamic-content AND ul are static. the event is delegated!
$(".dynamic-content ul").on(
'click',
".point_element",
function(eve){
$(this).css("border","2px solid green"); // works
$(this).toggleClass("selected"); // not working
$(this).prop("class","selected"); // works
$("input", this).trigger('click'); // works
}
);HTML:
<div class="dynamic-content">
<ul>
<li id="point_element_2877" class="element point_element">
<fieldset><label><input value="po7" type="checkbox"></label></fieldset>
<div class="inlined">
<table>
<tr><td>some text</td></tr>
</table>
</div>
</li>
...
...发布于 2014-12-14 07:55:22
正如@A.Wolff在他的评论中提到的,答案是代码工作得很好。
问题是触发的事件正在取消对元素的检查。
发布于 2014-12-10 10:29:09
如果您的内容是动态生成的,那么您必须将事件委托给最近的静态父级或document,在下面的一个:
$("staticParentID/Class").on('click', ".point_element", function (eve) { // static parent或者这个:
$(document).on('click', ".point_element", function (eve) { // delegated to document语法是:
$(delegatedParent).on(event, selector, callbackFn);https://stackoverflow.com/questions/27398227
复制相似问题