【问题标题】:how to use POST method in LOAD function of JQUERY?如何在 JQUERY 的 LOAD 函数中使用 POST 方法?
【发布时间】:2010-07-13 06:24:54
【问题描述】:

我只想加载文档的一部分,因此我不得不使用 LOAD 函数,所以我尝试了这个函数。但是我有一个问题,我想将此函数的方法设置为 POST。我读入jquery 手册说这个函数默认使用 GET 方法,但是如果你的数据是一个对象,它将使用 POST 方法。我不知道该怎么做?我的意思是在数据列表中使用一个对象!

这是我的代码:

$("#form_next").live("click", function(event){

                var str = $("#form").serialize();

                $("#form").load("form.php?ajax=y&section=request&cid="+$("#country_id").val(), str, function(response, status, xhr) {
                  alert(response);
                });
                return false;               
        });

我该怎么做?

【问题讨论】:

    标签: jquery post load methods


    【解决方案1】:

    你可以在这里做一个简单的调整,使用.serializeArray()而不是.serialize(),像这样:

    $("#form_next").live("click", function(event){
      var obj = $("#form").serializeArray();
      $("#form").load("form.php?ajax=y&section=request&cid="+$("#country_id").val(), obj, function(response, status, xhr) {
        alert(response);
      });
      return false;               
    });
    

    这会触发与将数据作为对象传递相同的逻辑(因为您是,特别是数组),并将导致 POST 而不是您想要的 GET。

    【讨论】:

      【解决方案2】:

      嗯,你实际上已经回答了你的问题。

      $("#form").load("form.php", {
           ajax:     y,
           section:  request,
           cid:      $("#country_id").val(),
           magicstr: str
        }, function(response, status, xhr) {
                    alert(response);
        });
      

      【讨论】:

      • 哥们,你误会了!!!我想通过 POST 方法发送该 STR,但默认情况下未设置!
      • @armin: 只需将str 添加到data object。我更新了帖子。现在你可以在数据对象服务器端访问magicstr,另外,这个请求是POSTED
      • 对不起安迪,我们在 php 代码中访问数据的方式是这样的:例如: 对吗?
      • @armin:应该还是对的。在此示例中,您可以通过 $_POST['magicstr']; 访问
      猜你喜欢
      • 2011-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多