有没有办法知道提交哪个选择标签?
<form method="POST" action="submit.php">
<select id="id1" name="sel1" onchange="this.form.submit()">
<option value="1">First</option>
<option value="2" selected="selected">Second</option>
</select>
<select id="id2" name="sel2" onchange="this.form.submit()">
<option value="1">First</option>
<option value="2" selected="selected">Second</option>
</select>
</form>
非jQuery解决方案更可取,但不是强制性的......
P.S。问题是selected="select"
属性是动态生成的(我不知道哪个选项会被选为默认选项 - 因此我无法将默认值与提交进行比较)
答案 0 :(得分:1)
首先想到的是一个隐藏的字段,其中包含您设置的值。这样的事情应该做。
<form method="POST" action="submit.php">
<input type="hidden" name="submitselect" value="" id="submitselect">
<select id="id1" name="sel1" onchange="document.getElementById('submitselect').value='sel1';this.form.submit()">
<option value="1">First</option>
<option value="2" selected="selected">Second</option>
</select>
<select id="id2" name="sel2" onchange="document.getElementById('submitselect').value='sel2';this.form.submit()">
<option value="1">First</option>
<option value="2" selected="selected">Second</option>
</select>
</form>
或者,您可以选择默认选项,例如
<option value="" selected>-</option>
绝不会选择。这样,此选项将在select
中未设置,但不会导致提交。