我使用下面的method="get"
和其他几个下拉菜单的表单。当我提交表单时,因为我不想要一个大的地址,我尽量只留下非空的字段。
目前,如果我选择其中的一些,结果是禁用所有,甚至下拉菜单,我已经选择了一个值。
我在这里错过了什么?
$(document).ready(function () {
$('#apliforma').submit(function () {
$(this).find('select').not(":selected").prop('disabled', true);
return true;
});
});
<select class="form-control" name="kivikafrom" id="from">
<option value="">All</option>
<option value="1000">1000 cc</option>
<option value="1200">1200 cc</option>
<option value="1400">1400 cc</option>
<option value="1600">1600 cc</option>
</select>
如果你所有的下拉菜单都有一个默认值或非选择值""
,这应该工作:
$(this).find('select').filter(function() {
return this.value == '';
}).prop('disabled', true);
我认为没有必要禁用其他选择框选项。
只能通过
获得选定的值var selected_value = $("#from").val();
if(select_value != ''){
/* write code for what ever you want */
}
据我所知,不需要额外的努力来禁用所有其他选项,但是当你提交表单时,它只会从你的参数中的选择框中发送选择选项。