我在表格中的每一行都有一个下拉框
<table>
<tr>
<th>
<select name="priorityID" id="priorityID">
<option label="Important" value="1" selected="selected">Important</option>
<option label="semi important" value="2">semi important</option>
<option label="normal" value="3">normal</option>
<option label="not important" value="4">not important</option>
</select>
</th>
</tr>
<tr>
<th>
<select name="priorityID" id="priorityID">
<option label="Important" value="1" selected="selected">Important</option>
<option label="semi important" value="2">semi important</option>
<option label="normal" value="3">normal</option>
<option label="not important" value="4">not important</option>
</select>
</th>
现在问题是priorityID
更改时,我需要调用JQuery函数来更新数据库。现在由于每一行都有自己的下拉框,如何编写JQuery,以便在JQuery端,它可以捕获哪一行的下拉框触发事件?
答案 0 :(得分:2)
您可以使用change事件以及一些辐射:
$("select").change(function() {
var offset = $(this).closest("tr").prevAll().length;
alert(offset);
});
答案 1 :(得分:2)
您可以在每个选择上放置一个ID,并在使用jQuery.post/get时将其作为数据值包含。
然后,您可以在服务器站点获取它以找出更改了哪个选择框。
<select name="priorityID" id="1">
<select name="priorityID" id="2">
<select name="priorityID" id="3">
$("select").change(function() {
$.post(
"http://api.url.com/method",
{
"selectId" : $(this).attr('id'),
"selectedValue" : $(this).val()
},
function(data) {
alert('Back!');
}
);
});