Jquery验证代码不允许文本框中的空格

时间:2015-04-09 11:49:52

标签: javascript jquery validation

我正在寻找代码,其中不允许只有空格...例如,我有一个文本框,我试过这个



$(document).ready(function()
{  
   $("#mybutton").live('click',function() 
   {
     var txt_family_name=$("#mytextbox").val();
     if(txt_family_name =="" || txt_family_name ==null)
     {
       alert("null"); 
     }
     else
     {
       alert("not null");
     }
   });
});




上面这个代码我已经尝试过并且无法正常工作。所以请帮助我...在我的一个按钮上我调用上面的代码

示例:space .... with any text - 输出不应为null         :space space ....没有任何其他文本的任何空格 - 输出应为null

5 个答案:

答案 0 :(得分:2)

you can use the length attribute and the trim method to remove the trailing spaces, if any: 

$("#mybutton").on('click',function() 
   {
     var length = $.trim($("#mytextbox").val()).length;
     if(length == 0)
     {
       alert("null"); 
     }
     else
     {
       alert("not null");
     }
   });

答案 1 :(得分:1)

查看已更新的代码

$(document).ready(function()
{  
$("#clickme").on('click',function() 
{
  var txt_family_name=$.trim($("#mytextbox").val());
 if(txt_family_name ==="" || txt_family_name ===null)
 {
   alert("null"); 
 }
 else
 {
   alert("not null");
 }
});
});

答案 2 :(得分:0)

你可以使用正则表达式。

$(document).ready(function() {
  $("#mybutton").bind('click', function() {
    var txt_family_name = $("#mytextbox").val();
    if (txt_family_name.replace(/\s/g, '') == "") {
      alert("null");
    } else {
      alert("not null");
    }
  });
});

答案 3 :(得分:0)

Jquery验证:require方法只检查输入的长度。所以它允许空格。解决方案是简单地改变其中的一行代码。

required: function( value, element, param ) {

        // Check if dependency is met
        if ( !this.depend( param, element ) ) {
            return "dependency-mismatch";
        }
        if ( element.nodeName.toLowerCase() === "select" ) {

            // Could be an array for select-multiple or a string, both are fine this way
            var val = $( element ).val();
            return val && val.length > 0;
        }
        if ( this.checkable( element ) ) {
            return this.getLength( value, element ) > 0;
        }
        return value.length > 0;
    }

在上面的代码中将value.length更改为$ .trim(value).length 所以只需删除空格

答案 4 :(得分:0)

//添加删除空格的方法

$.validator.addMethod("blankSpace", function(value) { 
  return value.indexOf(" ") < 0 && value != ""; 
});