ajax post提交后又自动请求了一次get

html代码

<form method="post" class="form-horizontal">
    <div class="form-group">
        <label class="col-lg-2 control-label">上级权限</label>
        <div class="col-lg-4">
            <select name="pid">
                <option value="0">顶级权限</option>
                {volist name="authRuleRes" id="authRule"}<option value="{$authRule.id}"><?php if($authRule['level']!=0){echo '|';} echo str_repeat('—', $authRule['level']*3)?>{$authRule.title}</option>{/volist}
                                                    
            </select>
        </div>
    </div>

    <div class="form-group">
        <label class="col-lg-2 control-label">权限名称</label>
        <div class="col-lg-8">
            <input type="text" class="form-control" name="title"/>
        </div>
    </div>

    <div class="form-group">
        <label class="col-lg-2 control-label">控制器/方法</label>
        <div class="col-lg-8">
            <input class="form-control" name="name" type="text" />
        </div>
    </div>

    <div class="form-group">
        <div class="col-lg-offset-2 col-lg-8">
            <input class="btn btn-primary" type="submit" value="提交" />
            <input class="btn btn-default" type="reset" value="重置">
        </div>
    </div>
</form>

js代码

$('.form-horizontal').submit(function(event) {
    var data = $(this).serialize();
    $.ajax({
        type:"post",
        url:"/authrule/add",
        async:true,
        data:data,
        success:function(res){
            if(res.code == 1){
                Notify(res.msg, 'top-right', '5000', 'success', 'fa-check', true);
                return false;
            }else{
                Notify(res.msg, 'top-right', '5000', 'danger', 'fa-times', true);
                return false;
            }
        }
    })
    return false;
})

post提交正常,但是提交后自动请求了一个get,请问哪错了吗?

阅读 5.1k
3 个回答

$('.form-horizontal') 这个选择器选择了一个很大的范围,事件传输就有可能触发二次, 建议,写精确一点
比如
$('.form-horizontal input[type=submit]')

这个很常见, 跨域了吧?

Mark 我也碰到这个了。ajax请求局域网同事的服务器,Post方式经过options后变成了get方式....

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题