我有一个选择选项表单字段设置如下:
<select name="options[]" multiple="multiple">
<option value="1" selected="selected">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
用户可以选择多个选项,但我希望选择第一个选项并始终保持选中状态。用户不应该取消选择第一个选项,基本上将其作为必填字段。
有可能这样做吗?我不介意使用JavaScript或Jquery来实现这一点,我尝试使选项“选中”和“禁用”,但用户仍然可以取消选择第一个选项。
干杯
EEF
答案 0 :(得分:4)
尝试这样的事情(jQuery):
$('select[name^=options]').change(function () {
$(this).children(':first').attr('selected', true);
});
答案 1 :(得分:3)
每次做出选择时,您都必须(重新)选择该选项。我使用onchange()处理程序。最好重新设计UI以向用户显示它不是真正可选的。并确保后端不依赖于所选择的选项,以防js关闭或错误。
答案 2 :(得分:2)
使用onclick或onchange事件:
select.onclick = function () {
select.options[0].selected = true;
}
答案 3 :(得分:2)
正如其他人所提到的,每次更改时都会(重新)选择该选项。但另一个需要注意的重要事项是,无论使用何种形式(例如服务器端数据处理),都需要了解此规则。否则,所有人必须做的就是访问您的网站,禁用javascript,然后选择您不希望他们拥有的选项。