我有一张表格:
<form id="myForm">
<select name="mySelect">
<option value="250">250</option>
<option value="500">500</option>
</select>
<input id="submit-123" type="submit" />
</form>
我需要以聪明的方式获取提交的价值。页面上有多个表单,因此我需要获取与已单击的提交按钮相关的表单。
var form = $('#submit-123').closest('form');
但我无法弄清楚如何获取select的值,而不需要引用索引(它需要比这更强大)。
我得到的最接近的是form.children()
,但我仍然无法确定如何准确定位选区。
我是一名JS新手,非常感谢任何帮助。
答案 0 :(得分:0)
您可以尝试此操作以获取相关的提交按钮单击
$('form').has('#submit-123').find('select');
或
$(this).prev('select');
或
$(this).closes('form').find('select');
从该选择中获取值
$('form').has('#submit-123').find('select').val();
或
$(this).prev('select').val();
完整代码
$(':submit').on('click', function(e) {
e.preventDefault(); // just for stop redirect, you may not need this
alert($('form').has(this).find('select').val());
});
<强> DEMO 1 强>
或强>
$(':submit').on('click', function(e) {
e.preventDefault(); // just for stop redirect, you may not need this
alert($(this).prev('select').val());
});
<强> DEMO 2 强>
答案 1 :(得分:0)
<强> HTML 强>
<form id="myForm">
<select name="mySelect">
<option value="250">250</option>
<option value="500">500</option>
</select>
<input id="submit-123" type="submit" />
</form>
<强> SCRIPT 强>
$("input:submit").click(function(){
var value = $(this).closest('form').find('select').val();
return false;
});
答案 2 :(得分:0)
这应该对你有用,
$('#submit-123').siblings('select[name="mySelect"]').val()