[英]jQuery id selector and validate.js
所以我在看几天前写的一些代码,它运行得很完美,我完全不知道怎么做。 我希望你们中的一个可以帮助我。
在我的验证代码中,我正在执行一些ajax请求。 这是使用“远程”标签完成的。 这些请求将表单中输入的用户名和电子邮件发送到服务器。
$("#signup-form").validate({
rules: {
username: {
required: true,
remote: {
url: "/CheckDuplicateUsername/",
type: "get",
data: {
username: $("#username").val()
}
}
},
email: {
required: true,
remote: {
url: "/CheckDuplicateEmail/",
type: "get",
data: {
email : $("#email").val()
}
}
},
//More code
请注意,我将电子邮件和用户名字段中的值发送到服务器。 我使用ID获取这些值。 我想我从表单的标签中获取了这些数据。 现在让我告诉你我的HTML。 请注意,我的用户名和密码标记中的ID与我上面的jQuery代码中使用的ID不同。
<div class="fieldWrapper">
<label for="id_username">Username: </label>
<input id="id_username" type="text" placeholder="First Name" name="username" maxlength="30" class="valid">
</div>
<div class="fieldWrapper">
<label for="id_email">Email</label>
<input id="id_email" type="text" placeholder="Email" name="email" maxlength="75">
</div>
我的两个输入标签分别具有id“id_username”和“id_email”。 但验证代码选择带有“用户名”和“电子邮件”的标签。 请注意,我的验证代码正在向服务器发送正确的数据。 如果我尝试更改验证代码以选择与“id_username”和“id_email”关联的标记内的值,则会将空字符串发送到服务器。 怎么会这样!?
谢谢!
当你有
rules: {
username: {
...
这意味着验证name
属性等于username
字段。 当您指定remote
选项,您可以使用data
为附加字段发送数据。 就像在这个例子中插件docs:
“使电子邮件字段成为必需,一封电子邮件并执行远程请求以检查是否已经获取给定地址。此外,http方法设置为”post“,用户名将与电子邮件地址一起发送。”
$("#myform").validate({
rules: {
email: {
required: true,
email: true,
remote: {
url: "check-email.php",
type: "post",
data: {
username: function() {
return $("#username").val();
}
}
}
}
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.