[英]jQuery Remote validation for multiple fields
我有一个包含两个字段的表单:用户ID和电子邮件ID。 我正在尝试验证每个字段的值是否已被使用或是否未使用具有jQuery远程验证的相同php文件。
但是我的困惑是在我的情况下应该如何处理远程文件(validate.php)。 如何确定字段。
我的代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Validationt</title>
<script type="text/javascript">
$(document).ready(function(){
$("form").validate({
rules: {
userid: {
required: true,
remote: {
url: "validate.php",
type: "post",
}
}
emailid: {
required: true,
remote: {
url: "validate.php",
type: "post",
}
}
},
messages: {
userid: {
remote: jQuery.validator.format("userid {0} is already taken")
}
emailid: {
remote: jQuery.validator.format("emailid {0} is already taken")
}
}
});
});
</script
</head>
<body>
<form method="post" id="form" action="">
<input id="userid" name="userid" type="text" />
<input id="emailid" name="emailid" type="text" />
<input type="submit" name="submit" id="submit"/>
</form>
</body>
</html>
有什么帮助吗?
喜欢,
//validate.php
//get the post fields
$email_address = trim( $_POST["emailid"] );
//check if email exists against database, like
if( is_valid_from_db( $email_address ) ) {
return TRUE;
}
else {
return FALSE;
}
我确定您已经查看了以下文档: http : //docs.jquery.com/Plugins/Validation/Methods/remote#options
validate.php只需要执行其所说的验证字段即可。
这个其他问题可能会有所帮助: jQuery远程验证
我也在寻找使用远程方法验证多个字段的问题的答案。
若要分别确定每个字段,则不必为每个字段定义远程方法。 而您可以为“ emailid”字段定义远程方法,并且可以使用data选项在emailid旁边发送“ userid” ,如下所示。
emailid: {
required: true,
remote: {
url: "validate.php",
type: "post",
data: {
userid: function() {
return $("#userid").val();
}
}
}
}
所以你可以像这样
<script type="text/javascript">
$(document).ready(function(){
$("form").validate({
rules: {
userid: {
required: true
}
emailid: {
required: true,
remote: {
url: "validate.php",
type: "post",
data: {
userid: function() {
return $("#userid").val();
}
}
}
}
},
messages: {
userid: {
remote: jQuery.validator.format("userid {0} is already taken")
}
emailid: {
remote: jQuery.validator.format("emailid {0} is already taken")
}
}
});
});
</script>
上面的代码会将userid和emailid发布到您的validate.php中,您可以在其中跟随DemoUser的回答。 但是请确保返回值(真/假)是字符串值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.