仅当输入值长度大于2时,才会显示Jquery模态窗口

时间:2013-04-12 10:17:37

标签: javascript jquery

当我点击我的键盘输入时,我有这样的代码显示模态窗口:

  $(".search-input").keypress(function(e) {
    if(e.which == 13) {
      $('#screen').css({ opacity: 0.5, 'width':$(document).width(),'height':$(document).height()});
      $('#screen').show();
      $('#loading_modal').show();    
    }
  });

但我需要自定义它,如果输入类.search-input值小于3,我没有显示任何模态窗口...

我试试:

  $(".search-input").keypress(function(e) {
    if(e.which == 13) {
      if($(".search-input").value.length > 2) {
        $('#screen').css({ opacity: 0.5, 'width':$(document).width(),'height':$(document).height()});
        $('#screen').show();
        $('#loading_modal').show();    
      }
    }
  });

但由于某些原因它不起作用(如何解决我的问题?

2 个答案:

答案 0 :(得分:2)

使用trim()删除空格和val()

试试这个

  if($.trim($(this).val()).length > 2) {
      ......

答案 1 :(得分:1)

这将基本上替换任何文本:

$(".search-input").value.replace(/{.*?}/g, '').length > 2

请改为尝试:

$.trim($(this).val().replace(/[^\w\s]/g, '')).length > 2

如果 确实只 希望搜索字符串中的字母执行此操作:

$(this).val().replace(/[^a-z]/gi, '').length > 2