如何获取触发jQuery id
函数的元素的.change()
?
函数本身可以正常工作,但我需要一个具有id="next"
的选择器的特定操作。
$("select").change(function() {
[...snip....]
alert( $(this).attr('id') ); // <---- not working
}
为什么上面的提醒无效?
答案 0 :(得分:63)
this
是挂接事件的DOM元素。 this.id
是其ID。无需将其包装在jQuery实例中以获取它,id
属性可以在所有浏览器上可靠地反映该属性。
$("select").change(function() {
alert("Changed: " + this.id);
}
您不是在代码示例中执行此操作,但如果您正在观看具有多个表单元素的容器,那么将为您提供容器的ID 。如果您想要触发该事件的元素的ID,您可以从event
object's target
属性中获取该ID:
$("#container").change(function(event) {
alert("Field " + event.target.id + " changed");
});
(jQuery确保change
事件起泡,即使在IE本身也不存在。)
答案 1 :(得分:5)
你的意思是对于id为“next”的select元素你需要执行一些特定的脚本吗?
$("#next").change(function(){
//enter code here
});