Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php $form.submit(函数(){……});它不起作用了_Php_Html_Jquery - Fatal编程技术网

Php $form.submit(函数(){……});它不起作用了

Php $form.submit(函数(){……});它不起作用了,php,html,jquery,Php,Html,Jquery,我创建了一个注册表表单,并使用ajax验证表单;不起作用。我将解释这个问题。下面显示的是ajax的代码 $(document).ready(function() { var $form=$('#myform'); //debugger; $form.submit(function() { $.ajax({ type:'POST', url

我创建了一个注册表表单,并使用ajax验证表单;不起作用。我将解释这个问题。下面显示的是ajax的代码

$(document).ready(function()
    {
        var $form=$('#myform');
        //debugger;
        $form.submit(function()
        {
            $.ajax({
                type:'POST',
                url:'registrationvalidation.php',
                data:$("#myform").serialize(),
                success:function(data)
                {
                    alert(data);
                    if(data=="ok")
                        {
                           return true;
                        }
                        else
                        {
                            alert(data);
                            return false;
                        }
                }
            });
        });
    });
并且提交被live功能所取代,它按照要求工作。这是工作代码

$(document).ready(function()
    {
        //var $form=$('#myform');

        //debugger;
        //$form.submit(function()
        $("#submit").live('click',function()
        {
            $.ajax({
                type:'POST',
                url:'registrationvalidation.php',
                data:$("#myform").serialize(),
                success:function(data)
                {
                    alert(data);
                    if(data=="ok")
                        {
                           return true;
                        }
                        else
                        {
                            alert(data);
                            return false;
                        }
                }
            });
        });
    });
但在我的程序中,我想使用submit函数,因为我在提交后将一些数据从html表单发布到另一个页面。当我使用chrome开发者工具执行相同的代码(第一个代码)时,它工作正常。任何人都知道解决方案。。 Html表单

<form id="myform" action="insert.php" method="post" >
        <h1>Personal Information</h1>
        <fieldset id="personal">
            <input id="firstname" name="firstname" type="text" placeholder="FIRST NAME" autofocus><br>
            <input id="lastname" name="lastname" type="text" placeholder="LAST NAME"><br>
            <input id="gender" name="gender" type="text" placeholder="GENDER" ><br>
            <input id="email" name="email" type="email" placeholder="EMAIL"><br>
            <input id="date" name="date" type="date" placeholder="JOINING DATE" ><br>
            <input id="designation" name="designation" type="text" placeholder="DESIGNATION"><br>
        </fieldset>
        <h1>Login Info</h1>
        <fieldset id="logininfo">
            <input id="username" name="username" type="text" placeholder="USER NAME" ><br>
            <input id="password1" name="password1" type="password" placeholder="PASSWORD" ><br>
            <input id="password2" name="password2" type="password" placeholder="CONFORM PASSWORD" ><br>
        </fieldset>
        <h1>Permissions</h1>
        <fieldset id="permission" align="center">
            View&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:<input id = "VIEW" name="view" type = "checkbox" value = "view" /> <br>
            Edit&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:<input id = "EDIT"name="edit" type = "checkbox" value = "edit" /> <br>
            Delete&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:<input id = "DELETE"name="delete" type = "checkbox" value = "delete" /> <br>
            Permission&nbsp;&nbsp;:<input id = "PERMISSION" name="permission"type = "checkbox" value = "perms" /> <br>
            Add User&nbsp;&nbsp;&nbsp;:<input id = "ADD" name="add" type = "checkbox" value = "add" /> <br>
        </fieldset>
        <fieldset id="actions">
            <input type="button" id="submit" value="SUBMIT" />
            <!--<input type="submit" id="submit" value="SUBMIT" />this is for submit function-->
            <div id="idd"></div>
        </fieldset>
    </form>

个人信息






登录信息


权限 视图:
编辑:
删除:
权限:
添加用户:

提前感谢。

您应该取消表单提交,并在AJAX成功时手动提交表单:

var oForm = $('#myform');
oForm.submit(function()
{
    $.ajax({
        type:'POST',
        url:'registrationvalidation.php',
        data: oForm.serialize(),
        success:function(data)
        {
            alert(data);
            if(data=="ok")
            {
                oForm[0].submit();
            }
            else
            {
                alert(data);
            }
        }
    });
    return false;
});

AJAX回调中的“return false”毫无意义,它不会影响表单提交。

您应该取消表单提交,并在AJAX成功时手动提交表单:

var oForm = $('#myform');
oForm.submit(function()
{
    $.ajax({
        type:'POST',
        url:'registrationvalidation.php',
        data: oForm.serialize(),
        success:function(data)
        {
            alert(data);
            if(data=="ok")
            {
                oForm[0].submit();
            }
            else
            {
                alert(data);
            }
        }
    });
    return false;
});

AJAX回调中的“return false”毫无意义,它不会影响表单提交。

AJAX成功中的
return true | false
的目标是什么?true用于提交表单,flase用于提交表单,这在异步调用中是不可能的。您的
返回false
是在提交表单后执行的,它是确定的..但是为什么表单.submit(函数(){..});在ajax成功中,
return true | false
的目标是什么?true用于提交表单,flase用于not这在异步调用中是不可能的。您的
返回false
是在提交表单后执行的,它是确定的..但是为什么表单.submit(函数(){..});不工作这不会导致提交循环?@chumkiu很好!将代码更改为提交本机表单元素,这样不会触发jQuery事件。这很有效,但我不明白为什么。submit事件也应该与本机触发器一起工作。关于这件事,你有没有找医生的建议?@chumkiu有很好的解释。:)+1谢谢:-)只是一个问题:这是安全的交叉划船吗?(IE?)这不会导致提交循环?@chumkiu很好!将代码更改为提交本机表单元素,这样不会触发jQuery事件。这很有效,但我不明白为什么。submit事件也应该与本机触发器一起工作。关于这件事,你有没有找医生的建议?@chumkiu有很好的解释。:)+1谢谢:-)只是一个问题:这是安全的交叉划船吗?(即?)