Javascript 如何捕获a<;的onchange事件;td>;
我需要在下面的TD上捕获一个更改事件。每当其内容发生变化时(在本例中为“罗斯蒙特测量”),我需要调用一个函数。我不认为它接受“onchange”属性。。。这就是问题所在。这能做到吗Javascript 如何捕获a<;的onchange事件;td>;,javascript,jquery,html,Javascript,Jquery,Html,我需要在下面的TD上捕获一个更改事件。每当其内容发生变化时(在本例中为“罗斯蒙特测量”),我需要调用一个函数。我不认为它接受“onchange”属性。。。这就是问题所在。这能做到吗 <TD style="PADDING-LEFT: 6px; CURSOR: default" id="A0.R0.Indexed Pick 3" class="fv fvu" title="Rosemount Measurement" _savedBKClr>Rosemount Measurement&l
<TD style="PADDING-LEFT: 6px; CURSOR: default" id="A0.R0.Indexed Pick 3" class="fv fvu" title="Rosemount Measurement" _savedBKClr>Rosemount Measurement</TD>
罗斯蒙特测量
我将发布一个较大部分代码的打印屏幕,其中包括上面的一行(如果有帮助的话)
我建议使用自定义事件,例如
contentchange
,并从进行内容更改的src触发它
订阅活动
$('table.yourClassName').on('contentchange', 'td', fn);
在内容更改代码处
$(refToTheTd).trigger('contentchange');
TD没有更改事件,因为它没有值,它只在其中保存一些文本。它为其创建自定义事件的唯一方法(更改内部文本后,您需要自己触发事件)
setTimeout(函数(){
$('td').text(函数(){
返回this.innerHTML+“…成功?”;
}).trigger('custom:td:name_whatever.event');
}, 1000);
$('td').on('custom:td:name_whatever.event',function()){
警报(this.innerHTML);
});代码>
试验
我找到了一个可以满足我需求的解决方案,但我还没有对其进行调整(仍在努力解决):
不幸的是,上面提供的两种解决方案不能满足我的要求。。请看这个问题,它可能会对您有所帮助。也请阅读这个问题。这非常有用,但有一点除外:它不会捕获对
中文本所做的更改。请看这个:
//assume tbl has id foobar
document.getElementById('foobar').addEventListener('change',function(e)
{
e = e || window.event;
var target = e.target || e.srcElement;
var name = target.id || target.getAttribute('name');
alert('the ' + name + ' element changed!');
},false);