请参考上面的图片..我是jquery的新手,我已经开发了一个php表单来输入数据。我想限制用户在输入错误值时离开文本字段。 范围:比如0到50。 它也应该接受AB,NR。
知道如何实现这一点。
我非常感谢这个快速回复。
我替换了
<script>
$.validator.addMethod("custom_number", function(value, element) {
return this.optional(element) || value == "AB" || value == "NF" ||
value.match(/^[0-9,\+-]+$/);
}, "Please enter a valid number, or 'AB'");
$(document).ready(function(){
$("#form").validate({
rules: {
'hd[]': {
required: false,
custom_number: true
}
}
});
});
</script>
使用
<script>
var accept_values = array("AB","NR",'01','02','03','04','05','06','07','08','09','10');
function inArray(needle, haystack) {
var length = haystack.length;
for(var i = 0; i < length; i++) {
if(haystack[i] == needle) return true;
}
return false;
}
var success = 0;
$("input[type='hd[]']").each(function(){
if(!in_array(accept_values, $(this).val())) {
success = 1;
}
});
if(success == 1){
alert("You have entered an invalid value");
return false;
}
//do success
</script>
希望我能接受01到10以及'AB'和'NR' 但它没有成功。有没有办法提供范围和字母?
答案 0 :(得分:2)
请根据您的要求/需要进行修改:
function validate(){
$('.theory').each(function(){
if($(this).val() == ''){
alert('Please enter value.');
return false;
}else{
if($(this).val() < 0 || $(this).val() > 50 ){
alert('Please enter correct value.');
return false;
}
}
});
return true;
}
答案 1 :(得分:1)
希望您的文本框具有相同的css类(例如:checkrow)。
Jquery代码(未经测试)
$(function(){
var status =true;
$('.checkrow').on('blur',function(){
var valueofrow =$(this).val();
if(valueofrow =='AB' || valueofrow =='NR'){
status =true;
} else{
status =false;
}
if(status == false){
alert("warning message");
return false;
}
});
});
答案 2 :(得分:0)
var accept_values = array("AB","NR");
function inArray(needle, haystack) {
var length = haystack.length;
for(var i = 0; i < length; i++) {
if(haystack[i] == needle) return true;
}
return false;
}
var success = 0;
$("input[type='text']").each(function(){
if(!in_array(accept_values, $(this).val())) {
success = 1;
}
});
if(success == 1){
alert("You have entered an invalid value");
return false;
}
//do success
答案 3 :(得分:0)
我尝试使用jquery验证器解决您的问题..
检查它是否符合您的要求,或者您想要更改某些内容..
<script src='
http://code.jquery.com/jquery-latest.min.js '></script>
<script src='http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js'></script>
<script>
$(document).ready(function(){
$('#frm').validate();
$(".inp_text").each(function(){
$(this).rules("add", {
required: true,
checkValue: true
});
});
$.validator.addMethod("checkValue", function(value, element) {
var response = ((value > 0)&&(value <= 50))||((value == 'AB')||(value =='NR'));
return response;
}, "invalid value");
})
</script>
<form id='frm'>
<input type='text' name='inp_text' class='inp_text'/><br>
<input type='text' name='inp_text1' class='inp_text'/><br>
<input type='submit' name=''/>
</frm>
请注意,所有输入都应具有相同的类