【发布时间】:2011-05-27 23:06:42
【问题描述】:
由于某种原因,我无法弄清楚在输入内容后如何返回输入值。这与this problem 有关,如果没有识别用户名值,我将无法验证任何内容。我正在运行 jQuery 1.6.1 并验证 1.8.1。
这是 HTML 表单:
<form class="cmxform" action="register.php" method="post" name="signup" id="signup">
<ul>
<li>
<label for="username">Username: <em>*</em></label>
<input type="text" id="username" name="Username" size="20" class="required" placeholder="Username" />
</li>
</ul>
</form>
在提交表单之前,我想确保我可以看到我在输入中输入的用户名的值。我有一个返回用户名值的警报,但警报始终不显示任何内容。这是我正在使用的 JS 代码:
$(document).ready(function(){
var username = $("#username").val();
var parameter = "action=checkusername&username="+username;
$.validator.addMethod("checkAvailability",function(value,element){
$.ajax({
url: "dbquery.php",
type: "POST",
async: false,
data: parameter,
success: function(output) {
alert (username);
return true;
}
});
},"Sorry, this user name is not available");
// jQuery Validation script
$("#signup").validate( {
rules: {
Username: {
required: true,
minlength: 5,
checkAvailability: true // remote check for duplicate username
}
}
},
messages: {
Username: {
required: "Enter a username"
}
},
submitHandler: function(form) {
form.submit();
}
});
我应该使用val() 以外的其他东西来获取用户名的值吗?我很困惑为什么它没有给我我需要的价值!
【问题讨论】:
标签: javascript jquery validation jquery-validate