为了实现重置并清空表单内容,你可以使用 jQuery 的 val 方法将各种表单元素的值设置为空字符串,并通过 layui 的 form.render 方法来更新表单的渲染。以下是修改后的代码:
javascript
layui.use(["form", "laydate", "jquery", "layer"], function () {
let form = layui.form;
let $ = layui.jquery;
let layer = layui.layer;
// 绑定提交事件
form.on("submit(formDemo)", function (obj) {
console.log(obj);
layer.alert(JSON.stringify(obj.field), {
title: '当前填写的字段值'
});
$.ajax({
url: "add",
type: "POST",
data: obj.field,
success: function (ret) {
console.log("ret ==>", ret)
console.log(ret.code)
if (ret.code == 0) {
// 添加成功时弹出提示
layer.msg("添加成功");
// 重置并清空表单
$("#myForm")[0].reset();
// 刷新表单渲染
form.render();
} else {
// 添加失败时弹出提示
layer.msg("添加失败");
}
},
error: function (xhr, status, error) {
console.error("AJAX Error:", xhr.responseText);
layer.msg("服务器正忙!");
}
})
return false;
});
});
在这里,$("#myForm")[0].reset(); 会重置表单,将所有表单元素的值都设置为默认值,对于文本框、下拉框、单选框、复选框等元素都有效。之后再调用 form.render() 方法来更新表单的渲染。确保在 form.on("submit", ...) 事件中的 AJAX 请求成功后执行这些步骤,以实现添加成功后的表单重置和清空。
其中#myForm对应你layui中form表单的id属性名,或者.myForm代表你的class属性名