提交无效输入后,表单未提交?

时间:2013-06-27 05:36:41

标签: javascript validation

我有一个像这样的javascript函数:

   function validateInput() {
        var search_text = document.getElementById('search_text').value;
        var size = document.getElementById('size').value;
        var submitButton = document.getElementById('sb_search');
        document.getElementById('sb_search').disabled=false;
        var filter = /^[\x20-\x7E]*$/;

        if (filter.test(search_text) && search_text.length>0){
                   return true;
        }

        else{
             submitButton.setAttribute('disabled');

             } 

         }

一旦我按下没有值的提交按钮并且不满足正则表达式,之后就不会提交按钮。

4 个答案:

答案 0 :(得分:0)

根据正则表达式输入为零时,您正在禁用提交按钮!

你也没有回归,这是从submition拿来的!

答案 1 :(得分:0)

  • return false放入其他条件。
  • 而非document.getElementById('sb_search').disabled=false;尝试 document.getElementById('sb_search').removeAttribute('disabled')

答案 2 :(得分:0)

在else语句中输入false

    function validateInput() {
    var search_text = document.getElementById('search_text').value;
    var size = document.getElementById('size').value;
    var submitButton = document.getElementById('sb_search');
    document.getElementById('sb_search').disabled=false;
    var filter = /^[\x20-\x7E]*$/;

    if (filter.test(search_text) && search_text.length>0){
               return true;
    }

    else{
         submitButton.setAttribute('disabled');
         return false;
         } 

     }

答案 3 :(得分:-1)

那是因为search_text.length == 0因此你落入了else并禁用了提交按钮