如何验证表单内部的输入和表单外部的提交按钮

How to validate inputs inside form and submit button outside the form

本文关键字:表单 输入 外部 提交 按钮 何验证 内部 验证      更新时间:2023-09-26

根据需求,我正在尝试验证表单。

实际上我是传递表单输入元素在bootbox模态对话框和传递提交按钮动态模态对话框。

当input type=submit存在时,它能够验证表单输入。但是有没有提交按钮里面的形式,因为我在模态传递它,它是无法验证的形式。例如:

<form id="form_id">
Name:<input type="text" required>
<input type="submit" value="Submit">
</form>
$("#form_id").submit(function(e)){
//validation is ok
return false;
}

这是可以的,但是,现在在modal:

    var data="<form id="form_id">
    Name:<input type="text" required>
    </form>"; //getting from server
            $.ajax({
            url : 'url',
            type : 'get',
            async : true,
            data : data,
            success : function(data) {
                modalDialog = bootbox.dialog({
                    size : 'large',
                    title : "Title"
                    show : false,
                    message : data,
                    buttons : {
                        success: {
                            label : "Close window",
                            className : "btn-default",
                            callback : function() {
  return false;
        //after clicking submit button it should ask required if no data input,and stay in dialog as what happened previous scenario.But dialog is closed.
                            }
                        }
                    }
                });
                modalDialog.on('shown.bs.modal', function() {
                });
                modalDialog.modal('show');
            }
        });

试一下

将required添加到html

的输入类型中
 <form id="frmPlate">
    <input type="text" name="Name" required="required" />
</form>
<button type="submit" onclick="CheckValidation();"> Submit</button>

你可以在jquery中验证如下代码

function CheckValidation(){
    var frmvalid = $("#frmPart").valid();
    if (!frmvalid) {
        return false;
    }
}

当满足所有条件时,使用JavaScript提交表单。

document.getElementById('form_id').submit();

或jquery

("#'form_id'").submit();

现在这是你的代码添加了"submit"

    var data="<form id="form_id">
Name:<input type="text" required>
</form>"; //getting from server
        $.ajax({
        url : 'url',
        type : 'get',
        async : true,
        data : data,
        success : function(data) {
            modalDialog = bootbox.dialog({
                size : 'large',
                title : "Title"
                show : false,
                message : data,
                buttons : {
                    success: {
                        label : "Close window",
                        className : "btn-default",
                        callback : function() {
("#'form_id'").submit();
  return false;
        //after clicking submit button it should ask required if no data input,and stay in dialog as what happened previous scenario.But dialog is closed.
                        }
                    }
                }
            });
            modalDialog.on('shown.bs.modal', function() {
            });
            modalDialog.modal('show');
        }
    });