我正在使用jquery表单插件。
我希望在没有从服务器返回错误时关闭模态窗体窗口。 如果我喜欢这个
$(document).ready(function() {
var options = {
url: 'reg/registration.html',
type: 'post',
success: function(data) {
removeErrors();
var data = JSON.parse(data);
$.each(data, function(i, item) {
addError("#input" + item.field, item.codes[3]);
});
}
};
$("#registrationForm").ajaxForm(options);
});
$("#registerBtn").click(function() {
$("#registrationForm").submit();
return true;
});
关闭模态窗口。如果我return false
它没有关闭它。
但是我想只在成功函数中data
的长度为0时才关闭模态窗口。
怎么做?
我的模态窗口
<div class="modal" id="register" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4>New user registration <span class="glyphicon glyphicon-user"></span></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<form:form role="form" id="registrationForm" commandName="registerForm">
</form:form>
</div>
</div>
</div>
<div class="modal-footer">
<button id="registerBtn" class="btn btn-primary" data-dismiss="modal">Register</button>
<button class="btn btn-danger" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
答案 0 :(得分:1)
您可以在回调中有条件地关闭它:
success: function(data) {
removeErrors();
var data = JSON.parse(data);
if(data.length === 0) {
$("#register").remove();//this will call close and destroy
} else {
$.each(data, function(i, item) {
addError("#input" + item.field, item.codes[3]);
});
}
}
然后使用它:
$("#registerBtn").click(function() {
$("#registrationForm").submit();
return false; // This disables the default closing behaviour
});