layui表单提交两次

提问 已结 22 569
要不要买菜
悬赏:20飞吻
版本:layui 浏览器:
    let form = layui.form;
form.render();
form.verify({
selectOption: function (value, item) {
if ($(item).closest('tr').is(":visible")) {
if (!value) {
return '这是必填项';
}
}
}
})
form.on('submit(save)', function (data) {
debugger;
let formData = data.field;
sendData() //发送请求 保存数据
return false;
})
回帖
  • IDyun
    2020-3-20
    没能复现你所说的问题!

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Layui</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="//res.layui.com/layui/dist/css/layui.css" media="all">
    <!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
    </head>
    <body>

    <blockquote class="layui-elem-quote layui-text">
    鉴于小伙伴的普遍反馈,先温馨提醒两个常见“问题”:1. <a href="/doc/base/faq.html#form" target="_blank">为什么select/checkbox/radio没显示?</a> 2. <a href="/doc/modules/form.html#render" target="_blank">动态添加的表单元素如何更新?</a>
    </blockquote>

    <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
    <legend>表单集合演示</legend>
    </fieldset>

    <form class="layui-form" action="">
    <div class="layui-form-item">
    <label class="layui-form-label">单行输入框</label>
    <div class="layui-input-block">
    <input type="text" name="title" lay-verify="title" autocomplete="off" placeholder="请输入标题" class="layui-input">
    </div>
    </div>
    <div class="layui-form-item">
    <label class="layui-form-label">验证必填项</label>
    <div class="layui-input-block">
    <input type="text" name="username" lay-verify="required" lay-reqtext="用户名是必填项,岂能为空?" placeholder="请输入" autocomplete="off" class="layui-input">
    </div>
    </div>
    <div class="layui-form-item">
    <div class="layui-input-block">
    <a class="layui-btn " lay-submit="" lay-filter="save">保存</a>
    </div>
    </div>

    </form>
    <script src="//res.layui.com/layui/dist/layui.js" charset="utf-8"></script>
    <!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
    <script>
    layui.use(['form', 'layedit', 'laydate'], function(){

    let form = layui.form;

    form.verify({
    selectOption: function (value, item) {
    if ($(item).closest('tr').is(":visible")) {
    if (!value) {
    return '这是必填项';
    }
    }
    }
    })
    form.on('submit(save)', function (data) {
    debugger;
    let formData = data.field;

    return false;
    })

    });
    </script>

    </body>
    </html>
    0 回复
  •     <a class="layui-btn " lay-submit="" lay-filter="save">保存</a>
    0 回复
  • 我在提交那打了断点,然后 提交 就会走两次断点。 如果不填表单,会验证, 但还是会走 一次断点
    0 回复
  • 0 回复
  • @要不要买菜 你先把那个验证去掉,看看还不会走两遍
    0 回复
  • 0 回复
  • 0 回复
  • @要不要买菜 你的html form表单是不是写了action属性?
    0 回复
  • @Angel丨灬泪雨 [泪] 你都不看图[泪]
    0 回复
  • IDyun
    2020-3-20
     lay-filter="save-1"
      form.on('submit(save-1)', function (data) {
    debugger;
    let formData = data.field;
    sendData() //发送请求 保存数据
    return false;
    })
    你换个名称看下有问题吗
    0 回复