0

我有一个这样的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

4 回答 4

0

当输入为零或不是正则表达式时,您将禁用提交按钮!

你也没有返回 true ,它从提交中持有它!

于 2013-06-27T05:40:00.927 回答
0
  • 将 areturn false置于 else 条件中。
  • 而不是document.getElementById('sb_search').disabled=false;尝试 document.getElementById('sb_search').removeAttribute('disabled')
于 2013-06-27T05:41:31.713 回答
0

将 return false 放在 else 语句中

    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;
         } 

     }
于 2013-06-27T05:43:01.040 回答
-1

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

于 2013-06-27T05:38:35.403 回答