首页 > 后端开发 > php教程 > 请问jquery有方法可以判断一个表单提交之后结果是成功或不成功吗?

请问jquery有方法可以判断一个表单提交之后结果是成功或不成功吗?

WBOY
发布: 2016-08-04 09:19:30
原创
1497 人浏览过

具体是这样的,今天在做项目的时候用到layer弹出插件,我弹出的是一个iframe层。我用了ajax提交,通过ajax提交后的回调判断提交是否成功,成功就调用parent.layer.close(index);关掉这个弹出框并且在外面刷新当前页面取最新数据。

但是问题来了,现在需要加一个表单验证,我打算用jquery validate来做验证,但是我提交的时候是用ajax,不经过form标签的。所以想问下有什么方法可以判断一个表单提交之后结果是成功或不成功

表单处:

<code class="html">        <div class="ibox-content">
            <div class="col-md-12">
                <div class="form-group">
                    <label class="col-sm-3 control-label">用户组名称:</label>
                    <div class="col-sm-9">
                        <input id="name" name="name" class="form-control" placeholder="用户组名称" type="text" value="{$info.name}"> <span class="help-block m-b-none id='user_help' ">输入用户组名称,不能少于3个字</span>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">所属上级组名称 :</label>
                    <div class="col-sm-9">
                        <select class="form-control" name="pid[]" id="pid">
                            {$a}
                        </select> <span class="help-block m-b-none">请下拉选择该分组的所属上级,若该分组没有所属上级,则选择最上级</span>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-6 control-label">组详细说明:</label>
                    <div class="col-sm-6">
                        <textarea id="description" name="description" placeholder="输入组详细说明" style="height: 120px; width: 640px">{$info.description}</textarea>
                    </div>
                </div>
                <input type="hidden" id="id" name="id" value="{$info.id}">
                <button class="btn btn-primary" id="button">提交</button>
            </div>
        </div>

js ajax提交</code>
登录后复制
登录后复制

<script></script>

<code>    var url = "{:U('info')}";
    var index = parent.layer.getFrameIndex(window.name); 
    $('#button').click(function(){
        $.post(url,{
            'name' : $('#name').val(),
            'pid' : $('#pid').val(),
            'description' : $('#description').val(),
            'id' : $('#id').val()
        },function(data){
            if(data.status != 1){
                alert(data.info);
            }else{
                alert(data.info);
                parent.layer.close(index); //执行关闭
            }
        })
    })
</code>
登录后复制
登录后复制

回复内容:

具体是这样的,今天在做项目的时候用到layer弹出插件,我弹出的是一个iframe层。我用了ajax提交,通过ajax提交后的回调判断提交是否成功,成功就调用parent.layer.close(index);关掉这个弹出框并且在外面刷新当前页面取最新数据。

但是问题来了,现在需要加一个表单验证,我打算用jquery validate来做验证,但是我提交的时候是用ajax,不经过form标签的。所以想问下有什么方法可以判断一个表单提交之后结果是成功或不成功

表单处:

<code class="html">        <div class="ibox-content">
            <div class="col-md-12">
                <div class="form-group">
                    <label class="col-sm-3 control-label">用户组名称:</label>
                    <div class="col-sm-9">
                        <input id="name" name="name" class="form-control" placeholder="用户组名称" type="text" value="{$info.name}"> <span class="help-block m-b-none id='user_help' ">输入用户组名称,不能少于3个字</span>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-3 control-label">所属上级组名称 :</label>
                    <div class="col-sm-9">
                        <select class="form-control" name="pid[]" id="pid">
                            {$a}
                        </select> <span class="help-block m-b-none">请下拉选择该分组的所属上级,若该分组没有所属上级,则选择最上级</span>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-6 control-label">组详细说明:</label>
                    <div class="col-sm-6">
                        <textarea id="description" name="description" placeholder="输入组详细说明" style="height: 120px; width: 640px">{$info.description}</textarea>
                    </div>
                </div>
                <input type="hidden" id="id" name="id" value="{$info.id}">
                <button class="btn btn-primary" id="button">提交</button>
            </div>
        </div>

js ajax提交</code>
登录后复制
登录后复制

<script></script>

<code>    var url = "{:U('info')}";
    var index = parent.layer.getFrameIndex(window.name); 
    $('#button').click(function(){
        $.post(url,{
            'name' : $('#name').val(),
            'pid' : $('#pid').val(),
            'description' : $('#description').val(),
            'id' : $('#id').val()
        },function(data){
            if(data.status != 1){
                alert(data.info);
            }else{
                alert(data.info);
                parent.layer.close(index); //执行关闭
            }
        })
    })
</code>
登录后复制
登录后复制

ajax也可以提交表单啊

表单提交之后,根据数据库的操作结果,判断,跳转到哪个页面,成功还是失败

根据ajax请求数据后,返回的结果可以做判断

sucess可以判断ajax的数据是否顺利传送到服务器,服务器返回的数据判断服务器是否成功处理

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板