可能重复:
How to prevent submitting the HTML form’s input field value if it empty
如果我有一个三件式输入表格和一个提交按钮。
表格1 id:book
表格2 id:音乐
表格3:电视
假设我把“Book1”放在书籍字段中,“Music1”放在音乐领域,而没有在电视领域,我会得到这个网址:
http://url/search/?book=Book1&music=Music1&tv=
即使“tv”字段中没有任何内容,“& tv =”仍会附加到URL。有没有办法阻止这种情况,还是这种标准的浏览器行为?
答案 0 :(得分:1)
这是标准和逻辑行为。 “没有价值”与“空价值”不同。
答案 1 :(得分:1)
这是由于浏览器的行为,正如this answer中所述。
要“克服”此默认行为,您必须使用客户端脚本。我能想到的最简单,最不引人注目的方法是在你的页面上添加:
<script type="text/javascript">
window.onload = function() {
for (var i = 0; i < document.forms.length; i++) {
var oForm = document.forms[i];
oForm.onsubmit = function() {
for (var j = 0; j < this.elements.length; j++) {
var element = this.elements[j];
if (element.type === "text" && element.value === "")
element.disabled = true;
}
};
}
};
</script>
这会在提交表单时自动禁用任何空文本框,导致浏览器不为它们发送任何值。