jquery中是否有任何验证只接受5个逗号,但我可以在输入字段中使用任意数量的其他字母,或者它显示内联错误为"只允许使用5个逗号"在submit.please任何人给我一个解决方案,我正在寻找这一整天。谢谢你
答案 0 :(得分:2)
使用jQuery Validation Plugin,这是创建自定义规则以检查逗号的方法:
<强> JS:强>
$.validator.addMethod("comma-rule", function(value){
var n = value.split(",").length - 1;
return (n <= 5);
}, "Only 5 commas allowed");
$("form").validate({
rules: {
"commas-input": "comma-rule"
}
});
<强> HTML:强>
<form>
<input type='text' name='commas-input' />
</form>
<强>演示:强>
答案 1 :(得分:1)
您可以在逗号上使用split()并验证返回的数组长度不超过6。
我说6因为5个逗号会给你一个6项数组。
答案 2 :(得分:1)
function validStr (str) {
var exit = 0;
for (var i = 0; i < str.length ; i++) {
if(str.charAt(i) == ",")
exit++;
};
if (exit > 5){
return false;
}else{
return true;
}
}
&#13;
试试这个
答案 3 :(得分:1)
尝试使用input
事件,String.prototype.match()
var input = document.querySelector("input[type=text]")
, label = document.querySelector("[for=input]")
, lim = function lim(e) {
label.textContent = "";
if (e.target.value.match(/,/g).length > 5) {
e.target.value = e.target.value.replace(/,$/, "");
label.textContent = "only 5 commas allowed";
};
};
input.oninput = lim;
&#13;
<input type="text" id="input" />
<label for="input"></label>
&#13;