我正在编写CakePHP中已编写的代码。 并且,我添加了一些模型验证。
但是,在Jquery中,这段代码工作正常(模型验证和HTML5消息):
$('#itemAdd').on('submit', function(e) {
var $itemAdd = $("#itemAdd");
e.preventDefault();
var $this = $(this);
$this.serialize();
$.ajax({
...
}).done(function (data) {
if (data == true) {
$('body').on('hidden.bs.modal', '.modal', function () {
$(this).removeData('bs.modal');
});
location.reload();
}
}).fail(function () {
alert("Error");
});
});
但是,当它使用'click'时,ajax方法可以工作,但验证不是...... :(:
$("#next-item").on('click', function(e) {
e.preventDefault();
var $itemAdd = $("#itemAdd");
var data = $itemAdd.serializeArray();
var $this = $(this);
$.ajax({
...
}).done(function (data) {
alert(data);
alert('go !');
var $addItem = $("#addItem");
$addItem.removeData('modal-header');
$addItem.removeData('modal-body');
$("#addItem .modal-content").load('<?php echo FULL_BASE_URL; ?>/stock/stocks/modal_item_add/<?php echo $batch_id; ?>', function () {
$('#addItem').modal('show');
});
}).fail(function (jqXHR, textStatus, errorThrown) {
alert("An error : " + textStatus + ", " + errorThrown );
});
return false;
});
基于模型的验证不起作用。但是,在使用Jquery Ajax启动的Php方法中,告诉我(没关系)验证错误:
$this->Item->invalidFields();
当我使用 $(“#next-item”)时会出现问题我希望jQuery模式不会隐藏。 使用“提交”代替“点击”关闭模式。
有人有想法吗?
感谢。 F。