我想驗證一個jQuery UI模式框中的表單,但它看起來像jQuery驗證不想使用模態窗口或我不真的知道把驗證碼放在哪裏。jQuery驗證插件不工作在jQuery UI模式窗口
那功能$("#create_form").validate
工作正常,當我在$document.ready(
內使用它。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Dialog - Modal form</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$("#dialog-form").dialog({
autoOpen: false,
height: 500,
width: 400,
modal: true,
buttons: {
Submit: function() {
$("#create_form").validate({
//submitHandler: function(form) {
// doAjaxPost();
//},
rules:{
name:{
required: true,
minlength: 3,
maxlength: 16,
},
password:{
required: true,
minlength: 3,
maxlength: 16,
},
},
messages:{
name:{
required: "Login - is a mandatory field",
minlength: "Name should contain minimum {0} symbols",
maxlength: "Maximum symbols - {0}",
},
password:{
required: "Password - is a mandatory field",
minlength: "Password should contain minimum {0} symbols",
maxlength: "Password should contain maximum {0} symbols",
},
},
});
//$(this).dialog("close");
},
Cancel: function() {
$(this).dialog("close");
}
},
//close: function() {
//allFields.val("").removeClass("ui-state-error");
//}
});
$("#create-user")
.button()
.click(function() {
$("#dialog-form").dialog("open");
});
});
</script>
</head>
<body>
<!-- Create user form -->
<div id="dialog-form" title="Create new user">
<p class="validateTips">All form fields are required.</p>
<form id="create_form">
<fieldset>
<label for="name">Name</label>
<input type="text" name="name" id="name" class="text ui-widget-content ui-corner-all" />
<label for="email">Email</label>
<input type="text" name="email" id="email" value="" class="text ui-widget-content ui-corner-all" />
<label for="password">Password</label>
<input type="password" name="password" id="password" value="" class="text ui-widget-content ui-corner-all" />
</fieldset>
</form>
</div>
<div id="users-contain" class="ui-widget">
<h1>Existing Users:</h1>
<table id="users" class="ui-widget ui-widget-content">
<thead>
<tr class="ui-widget-header ">
<th>Name</th>
<th>Email</th>
<th>Password</th>
</tr>
</thead>
<tbody>
<tr>
<td>John Doe</td>
<td>[email protected]</td>
<td>johndoe1</td>
</tr>
</tbody>
</table>
</div>
<button id="create-user">Create new user</button>
</body>
</html>
出現在加載頁面上的形式?或者當用戶觸發彈出窗口時「創建」了嗎? – adamdehaven 2013-03-04 14:14:41
彈出窗口是通過按此按鈕創建的 而我想驗證用戶在提交時的輸入點擊 – 2013-03-04 14:17:39
但是頁面加載時窗體不可見,正確? – adamdehaven 2013-03-04 14:17:59