我在我的网络应用程序中使用了Jquery Autocomplete组合工具(非常好的工具)但是如果与自动完成组合框关联的字段为空,我想阻止表单提交。
所以现在,如果没有通过组合框选择任何内容我只是不显示提交按钮,但是如果选择了某些内容然后删除了......我不知道何时(或者哪里)我有隐藏我的提交按钮。
有什么想法吗?
提前致谢。
这里编辑的是我的代码:
/* HTML */
//The select filled with data for the combobox
<select id="combobox">
<option value=""></option>
<c:forEach var="item" items="${itemList}">
<option value="${item.value}">${item.key}</option>
</c:forEach>
</select>
//The form with the button
<form name="updateForm" action="update.htm" method="post">
<input type="hidden" id="id1" name="cID" />
<input type="hidden" id="id2" name="rID" />
<input type="submit" id='btn_update' value="Update" />
</form>
/* JAVASCRIPT */
//combobox widget init (...)
$("#btn_update").hide();
$( "#combobox" ).combobox({
selected:selectedFunc
});
答案 0 :(得分:0)
如果我不明白,你看起来像这样,
<强> HTML 强>
<select id="sel">
<option>-select-</option>
<option value="example1">example1</option>
<option value="example2">example2</option>
</select>
<input type="submit" id="but" style="display:none;"/>
<强>脚本强>
$("#sel").change(function() {
if(this.selectedIndex == 0)
$("#but").hide();
else
$("#but").show();
});
修改强>
无法准确解决您的问题,但也许此示例将以
的方式向您展示你可以使用change事件来控制自动完成,所以如果它为null,则隐藏提交按钮,如果不是null显示提交按钮。
here is an example in jsFiddle
但来自jquery-ui-autocomplete document
的坏消息更改活动
当字段模糊时触发,如果值已更改; ui.item指的是所选项目。
意思是不会在onkeypress上工作,它必须被模糊才能被触发。如果你可以将keypress事件添加到jquery-ui-autocomplate,它将完全正常工作。