我正在使用jQuery Datatables插件,想要获取用户输入的选择下拉列表的值并使用它,然后再将其重置为默认值。
HTML :
<td>
<form id="selectValue">
<select class="priorityList" name="priorityList">
<option value="">Select Priority</option>
<option value="1">Low</option>
<option value="2">Medium</option>
<option value="3">High</option>
</select>
</form>
</td>
此特定单元格显示在表格的每一行上,用户可以在每一行上选择值。
答案 0 :(得分:1)
<td>
<form id="selectValue">
<select class="priorityList" name="priorityList1">
<option value="">Select Priority</option>
<option value="1">Low</option>
<option value="2">Medium</option>
<option value="3">High</option>
</select>
</form>
</td>
<td>
<form id="selectValue">
<select class="priorityList" name="priorityList2">
<option value="">Select Priority</option>
<option value="1">Low</option>
<option value="2">Medium</option>
<option value="3">High</option>
</select>
</form>
</td>
$('select[name=priorityList1]').val()//in some cases, returns null
$('#priorityList1').val()//method 2 this returns null some times
$('#priorityList1 option:selected').val()//this works everytime
//for second priority list
$('select[name=priorityList2]').val()//in some cases, returns null
$('#priorityList2').val()//method 2 this returns null some times
$('#priorityList2 option:selected').val()//this works everytime
//to change names and Id through Jquery
$("#" + id).attr('id', 'priority' + counterIndex)
.attr('name', 'prioty' + counterIndex);
显然你尝试了上述内容并且无法正常工作。
确保您的ID是唯一的
只有两个,三个,四个或更多单选按钮可以使用相同的名称,其余按钮不能:explanation
答案 1 :(得分:0)
这会动态附加一个事件处理程序,所以当select选项被更改时,它会将select的值设置为一个可以使用的变量,然后它会将值重置回第一个选项。这适用于任意数量的选择框(请参阅小提琴)。这可以根据需要进行配置:
<强> JS 强>
$("#table select").on("change", function(){
// Get the value from the select box
var value = $(this).val();
// Do what you need to do with value
alert(value);
// Reset the select back to the first option
$(this).val("default");
});
这是一个JSFiddle,它显示了这一点:https://jsfiddle.net/wk5o1w4u/1/