我有一个文本框,我想计算'.'的出现次数.
如果文本框已经有'.' 那么用户不能输入'.' 来自他的主板
这是我的代码:
$('.txt').keyup(function() {
var ele = $(this).val();
var contains = (ele.indexOf('.') > -1);
if (contains) {
var count = $(this).val().match(/./g);
if (count > 1) {
var cont = $(this).val();
var str = $(this).val().length;
$(this).val(cont.substring(0, str));
}
}
});
Run Code Online (Sandbox Code Playgroud)
$(this).val().match(/./ g) 给出了'.'出现的索引.但我想计算它的出现次数.
您可以使用以下代码查找字符"."的时间.发生在一个字符串中.
var regex = new RegExp(/\./g)
var count = "This is some text .".match(regex).length;
Run Code Online (Sandbox Code Playgroud)
您的正则表达式需要更改。“。” 正则表达式意味着一切。您需要转义“.”。大概是这样的...
$(this).val().match(/\./g);
Run Code Online (Sandbox Code Playgroud)