如果表单中的空字段使用Javascript从URL中排除

时间:2016-04-28 21:34:54

标签: javascript html forms

我在其他答案中尝试了一些建议,但找不到适合我的建议。 这是我遇到的问题:

<form method="get">
<input name="field1">
<input name="field2">
<input type="submit" name="field1">
<form>

如果只在字段1中输入一个值,我会在URL中输入:

mysite.com?field1=this&field2

我需要的是:

mysite.com?field1=this

我认为这是一个干净简单的javascript代码行NO jQuery

1 个答案:

答案 0 :(得分:3)

您可以在提交表单时使用Javascript(通过onsubmit()事件)来迭代表单中没有值的<input>元素,然后禁用它们(因为已禁用的元素将不能发布到服务器上):

<form method="get" onsubmit='cleanUpEmptyElements(this);'>
   <input name="field1">
   <input name="field2">
   <input type="submit" name="field1">
<form>
<script> 
   // When your form is submitted
   function cleanUpEmptyElements(element){
       // Iterate through the available <input> elements
       var inputs = element.getElementsByTagName("input");
       for (var i = 0; i < inputs.length; i++) {
            // Disable those that do not have a value
            if(inputs[i].value.length == 0 && inputs[i].type != 'submit') {
                inputs[i].disabled = 'disabled';
            }
       }  
       // Continue your submission as normal
   }
</script>