如何检查输入标记中是否使用了逗号?

时间:2015-06-04 11:57:27

标签: javascript jquery

我有一些输入标签,我的ajax脚本将所有值转换为由逗号分隔的字符串,然后再将其发送到php脚本。现在,如果有人在输入标记中使用逗号,那么它会破坏我的read方法,因为值会被破坏。标签不适用于文本,因此没有理由有人使用它,但为了以防万一,如何使用jquery检查用户是否使用了逗号。

理想情况下,我想要:

$('element').keyup(function(event) {
      if(){//previous value was a comma
        alert('Commas not allowed!!');
        //Code to delete the comma
      }
    });

感谢。

2 个答案:

答案 0 :(得分:0)

您可以对当前输入值的值使用indexOf。

 if(this.value.indexOf(',') !== -1)
 {
    //comma in input is not allowed
  }

答案 1 :(得分:0)

我会做这样的事情。存储先前按下的按钮并比较它是否是逗号。然后我将删除第二个逗号(如果存在):

var previousKey = null;
$('input').keydown(function (event) {
    if (event.keyCode === 188 && previousKey === 188) {
        $val = $(this).val();
        $(this).val($val.substring(0,$val.length-1));
    }
    previousKey = event.keyCode;
});

这是一个演示: http://jsfiddle.net/s1tqbopn/1/

建议:为什么不使用一些已经过测试的jQuery插件进行标记输入。例如来自this page的结果。