jquery $.post 在加载回调函数中不起作用?

Posted

技术标签:

【中文标题】jquery $.post 在加载回调函数中不起作用?【英文标题】:jquery $.post not working in the load callback function? 【发布时间】:2012-07-06 14:18:12 【问题描述】:

这是我的代码

$('#edit-popout-warpper').load(url,function()
  //the url contain the editnameform
            $('#editnameform').submit(function(e)
                e.preventDefault(); 
                var $form = $( this ),
                    term = $form.find( 'input[name="mymoname"]' ).val(),
                    urll = $form.attr( 'action' );
                $.post(urll,mymoname:term);

            )
        )
        return false;

在我使用 jquery ajax 加载方法后,$.post 不起作用,它没有发送 post 请求知道为什么吗?

我终于让它工作了,只是我像这样使用了 $.ajax

 $.ajax(
         type:'POST',
         url:urll,
         data:mymoname:term
       )

我不知道为什么。但至少它起作用了。所以任何人都知道为什么 $,post 不起作用请让我知道thanx

【问题讨论】:

这个#editnameform 找到了吗?可以在回调函数的第一行尝试alert($('#editnameform').length); 你能在jsFiddle复制它吗? 你能检查开发者工具栏(通常是 F12)网络选项卡吗?您从请求中得到的错误代码是什么?标头也很方便。 我在点击提交按钮后使用 firebug 没有任何反应,甚至没有错误消息 【参考方案1】:

你错过了 post 回调函数。

$('#editnameform').submit(function (e) 
    e.preventDefault();
    var $form = $(this),
        term = $form.find('input[name="mymoname"]').val(),
        urll = $form.attr('action');
    $.post(urll, 
        mymoname: term
    , function(data) 
       console.log(data);
    );
);

【讨论】:

@chenliang 所以问题是你错过了回调函数。 $.post 回调不是可选的吗? @chenliang 你怎么知道你的$.post 不起作用?你检查http请求和响应了吗?? 我使用了萤火虫,控制台不显示发布请求;并且我的数据库没有更新,当我使用正常的方式提交它工作的表单并且有一个发布请求时

以上是关于jquery $.post 在加载回调函数中不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

除非开发人员工具打开,否则 jQuery $.post() 函数在 IE 中不起作用

jQuery 地址在回调中不起作用

jQuery Ajax Post - 无法使用回调函数设置全局变量?

为啥 Jquery 加载在 Firefox 中不起作用?

回调闭包函数在单元格中不起作用

路由更改在 Promise 回调函数中不起作用