代码之家  ›  专栏  ›  技术社区  ›  Daniele De Giorgi

是否在没有提交按钮的情况下通知/验证工作?

  •  0
  • Daniele De Giorgi  · 技术社区  · 8 年前

    我有一个非常简单的表单:

    <form>
        <fieldset>
            <input id="in1" type="text" data-validate="required">
        </fieldset>
        <fieldset>
            <input id="in2" type="text" data-validate="required">
        </fieldset>
        <input id="btn" type="button" value="Insert your datas" onclick="insert()">
    </form>
    

    如果第三次输入( id:"btn" )拥有 type="submit" ,通知/验证将很好地工作。

    我不需要提交此表单(因为我必须启动 insert() 功能打开按钮 onclick ),

    所以我 删除 这个 提交类型 很遗憾,我的页面上现在没有显示任何通知。

    我可以添加一个处理程序(如下所示: $(".elem-demo").notify("Hello Box") )正如notify docs建议的那样,但这是一个自定义通知,很好,但我想利用 verify.js data-validate ..不需要额外的代码进行简单的验证,如 “必需” “数字” .

    我怎样才能解决这个问题? 我希望我清楚我的问题,并感谢回答我。

    1 回复  |  直到 8 年前
        1
  •  0
  •   WitVault    8 年前

    您可以保留按钮类型提交,并可以在单击提交按钮时覆盖默认的表单提交行为 event.preventDefault()

    <form id="my-form" onSubmit="myFunction(event)">
        <fieldset>
            <input id="in1" type="text" data-validate="required">
        </fieldset>
        <fieldset>
            <input id="in2" type="text" data-validate="required">
        </fieldset>
        <input id="btn" type="submit" value="Insert your datas" onclick="insert()">
    </form>
    

    此函数将在表单提交时调用。通过表单id和调用访问表单 validate 检查表单是否有错误。 使命感 验证 将触发对表单中每个元素的验证。它接受回调函数 callback(success) 将在验证后调用。

    function myFunction(e){
     e.preventDefault();
    
     $("#my-form").validate(callbackFunction);
    
     // call your other function
    
    }