Jquery 如何使用单击(此)事件将新更改应用回html?
我试图弄清楚当点击html时如何返回或应用新的更改 看看“待办事项”的评论。我可以在$(o1)上看到新的值更改,但是如何将其冒泡到具有“this”值的点击调用方 试试这个:Jquery 如何使用单击(此)事件将新更改应用回html?,jquery,Jquery,我试图弄清楚当点击html时如何返回或应用新的更改 看看“待办事项”的评论。我可以在$(o1)上看到新的值更改,但是如何将其冒泡到具有“this”值的点击调用方 试试这个: $("#Box1").on("click","li[title='Model'] span.SpanRight-SortOrdering",function() { fooMouseClick(this); }); var fooMouseClick = function(parmThis) { var $
$("#Box1").on("click","li[title='Model'] span.SpanRight-SortOrdering",function() {
fooMouseClick(this);
});
var fooMouseClick = function(parmThis)
{
var $HtmlSpans = $(parmThis).parent().children();
$.each($HtmlSpans, function(i1, o1) {
if ($(o1).attr('data-column-sort-ordering') == "") {
$(o1).attr('data-column-sort-ordering', 'ASC');
}
});
}
代码$(parmThis.parentElement.innerHtml)代码>创建一个新对象,因此您所做的每一次更改都不会更改原始对象
试试这个:
$("#Box1").on("click","li[title='Model'] span.SpanRight-SortOrdering",function() {
fooMouseClick(this);
});
var fooMouseClick = function(parmThis)
{
var $HtmlSpans = $(parmThis).parent().children();
$.each($HtmlSpans, function(i1, o1) {
if ($(o1).attr('data-column-sort-ordering') == "") {
$(o1).attr('data-column-sort-ordering', 'ASC');
}
});
}
还请注意,如果选择器基于动态更改的值,则应使用委托事件处理程序。例如,如果要处理具有数据列排序=“ASC”
的元素的单击事件,请使用此代码(此值会动态更改):
似乎什么都没做。但是点击事件确实触发了。有一件事你需要知道。委托在更高版本的JQuery中被降级。@fletchsod:使用.delegate()
附加委托事件处理程序已被弃用,应使用.on()
<代码>委托事件处理程序
仍在jquery中使用,未被弃用。请检查答案是否使用.on()