我在下面使用引导程序作为下拉选择器,然后使用关联的 jQuery 函数在 input
type="text"
中显示选择的字段。但是用户仍然可以在输入字段中编写自己的内容,我想避免这种情况。我尝试在输入字段上使用 disabled
属性,但如果我这样做,jQuery Validate 插件将忽略它并授予权限,即使它是空的。
是否可以使用 type="text"
“停用”输入字段,而不使用 disabled
属性,以便我仍然可以使用 jQuery Validate。
<div class="form-group">
<div class="input-group">
<div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Choose<span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#" id="a">1</a></li>
<li><a href="#" id="b">2</a></li>
<li><a href="#" id="c">3</a></li>
<li><a href="#" id="d">4</a></li>
<li role="separator" class="divider"></li>
<li><a href="#" id="e">5</a></li>
</ul>
</div>
<input type="text" id="abc" autocomplete="off" name="abc" placeholder="Select *" class="form-control" aria-label="...">
</div>
</div>
原文由 PushALU 发布,翻译遵循 CC BY-SA 4.0 许可协议
没有直接的解决方案…如果通过
disabled
属性“禁用”该字段,jQuery Validate 插件将始终忽略它。 (从逻辑上讲,验证用户无法编辑的内容毫无意义。)但是有一个解决方法。如果您使用
readonly
属性而不是disabled
,它可以被验证。演示:http: //jsfiddle.net/85pu1oe5/