【问题标题】:How to send and retrieve information/如何发送和检索信息/
【发布时间】:2017-09-18 17:25:51
【问题描述】:

我在不同的域上保存了一个 php 文件,我使用这段代码发送用户名并获取用户的信息。

我正在尝试做这样的事情,但这不起作用有没有办法做到这一点。

var dataString = "username="+username+"";
    var url = "";

    $.ajax({
        type: "POST",
        url: url,
        data: dataString,
        crossDomain: true,
        cache: false,   
        success: $.getJSON(url, function(result)
        {
            console.log(result);
            $.each(result, function(i, field)
            {
                var id       = field.id;
                var username = field.username;
                var email    = field.email;

                $('#profile-info').append("ID: " + id + "<br>Username: " + username + "<br>Email: " + email + "<br><br>"); 
            });
        })
    });

【问题讨论】:

  • 你在$.ajax(中使用$.getJSON(是不可能的,为什么?
  • 改用成功,并确保在您的另一端跨域请求已打开,但不建议这样做。此外 .getJSON 不适用于发布请求,它用于获取
  • @JustOnUnderMillions 因为我不知道该怎么做:/
  • @adam 我更新了我的需求

标签: javascript php jquery ajax


【解决方案1】:

把你有的$.getJSON()函数替换为jQuery ajax函数提供的success回调,可以直接通过data参数传递用户名{ username : username },因为已经定义好了。

然后,当您成功接收数据时,您可以使用 jQuery $.each 函数迭代每个结果。

你真的需要将cache参数设置为false吗?,只是为了知道。

此外,如果您想使用 let 而不是 var,这些变量将位于 $.each“块”内。

<script>
  var url = '';

  $.ajax({
    type: "POST",
    url: url,
    data: { username: username },
    crossDomain: true,
    cache: false,   
    success: function(result) {
      console.log(result);
      $.each(result, function(i, field) {
        let id = field.id,
          username = field.username,
          email = field.email;

        $('#profile-info').append("ID: " + id + "<br>Username: " + username + "<br>Email: " + email + "<br><br>"); 
      });
    }
  });
</script>

【讨论】:

  • Sebastian 我正在尝试使用您的示例,但出现错误“无法使用 'in' 运算符搜索 'length' in”
  • 您能看到在您的success 回调中打印的result 数据吗?
  • 是的,“响应”是成功的,并查看具有正确值的数组
  • 然后检查您是如何在$.each() 函数中处理接收到的数据的。
  • 感谢 sebastian,只需要添加 JSON.parse
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-02-16
  • 2016-11-07
  • 2011-01-11
  • 1970-01-01
  • 2019-09-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多