我有这个HTML
<form id="Numbers">
<select name="Type" id="Type">
<option value="1">1</value>
<option value="2">3</value>
<option value="3">3</value>
<select>
<input name="SomeText">
<input type="submit">
</form>
这个jquery:
$(document).on("change submit", "#Numbers", function () {
//Do things and submit
});
我可以以某种方式检测哪个字段已更改,以便如果我有第二个函数,其中Type是表单中的选择字段的ID:
$(document).on("change", "#Type", function () {
//Do different things and submit
});
我想以他们不会同时解雇的方式进行设置。
或者我可能需要像
这样的东西$(document).on("change submit", "#Numbers", function () {
//Do things and submit
if(changed child is #Type)
{}
else
{}
});
但我不知道正确的语法。
答案 0 :(得分:1)
如果我不理解错误,您需要捕获表单内所有元素的更改事件,然后针对特定元素,您要触发单独的事件进行某些操作。以下是我在Fiddler Capture element id中所写的内容。
$(document).ready(function() {
$('#test').on('change',function(event){
alert(event.target.id);
});
});
<form id='test'>
<input type='text' id='text0' />
<input type="text" id='text1'/>
</form>
使用 event.target.id ,您可以对元素执行其他操作,也可以将调用重定向到其他jquery函数。