layui的php无法获取数据,layui抓取表单数据

4ca7e1266a5728069791a3e53a4ce880.png

注意事项:

1、layui 中提交按钮是基于“监听”机制实现的。

2、form.on() 的调用需置于 layui.use 的回调函数中。

3、末尾的 'return false' 不可或缺,以确保不会触发页面刷新。注意必须是 'return false',而不能简单写成 'return'。

抓取表单数据可按四步来实现:

1、禁用按钮。防止用户连续点击,需注意,在 Ajax 请求结束后(complete)再次显式启用按钮。

2、整合表单数据。很多时候,除了要获取正式表单的数据,还需要额外追加一些数据。

3、确定路径。有时候,同一个按钮可以表达多种操作,比如新增或修改。

4、发起请求。发起 Ajax 请求,向服务器传递参数,并在回调函数中对返回值做处理。

5、return false。

重要代码列举

1、HTML 声明

保存

如果仅需要监听效果(单击事件),则只需上述一个 button 以及 lay-filter 和 lay-submit。

如果需要收集表单元素的值,则还需要 form 以及其样式 layui-form。

2、js 事件监听// 保存

form.on('submit(btnSave)', function (data) {

console.info('开始保存');

// * 按钮禁用

var isDisabled = $("#btnSave").hasClass('layui-btn-disabled');

if (isDisabled) {

return false;

}

// * 整合表单数据

var formData = data.field;

$.extend(formData, { Id: $("#hiddenId").val() });

console.info(formData);

// * 确定路径

var url = "";

if (editMode == "add") {

url = urlEnum.Add;

} else if (editMode == "update") {

url = urlEnum.Update;

} else {

alert('编辑模型不确定, add / update');

return;

}

// * 发起请求

$.ajax({

data: formData,

type: "POST",

dataType: "JSON",

url: url,

beforeSend: function () {

// 禁用

$("#btnSave").addClass('layui-btn-disabled');

},

complete: function () {

// 启用

$("#btnSave").removeClass('layui-btn-disabled');

},

success: function (result) {

console.info("保存数据成功,返回的数据为:↓ ");

console.info(result);

if (result.Status) {

// 刷新列表

parent.$("#mainGrid").bootstrapTable("selectPage", 1);

// 确保在最后关闭窗体

parent.layer.close(parent.layer.getFrameIndex(window.name));

} else {

// 提示失败

layer.alert(result.StatusMessage, { title: '提示信息', icon: 5 });

}

}

}); // end ajax

return false;

});

更多layui相关知识请关注layui框架。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值