【问题标题】:jQuery .html() and .attr() not working after .get() call.get() 调用后 jQuery .html() 和 .attr() 不起作用
【发布时间】:2013-05-02 20:11:51
【问题描述】:

从 .get ajax 调用接收数据后,我似乎无法让 jQuery 更改 div 的 html 和 img 的 src。代码如下:

function setUpUser(method) {
    $.get("scripts/loggedIn.php", {
        method: method
    })
        .done(function(data) {
    $('#loginForm').css("display", "none");
    $('.account').css("display", "block");
    $('#userName').html(data.userName);
    $('#displayPic').attr("src", data.imagepath);
    $('.mask').css("visibility", "hidden");
    $('.loader').css("visibility", "hidden");
    }, "json");
}

我做了一个 console.log() 来检查 data.userName 和 data.imagepath 是否正确,它们是正确的。但是当调用发生时,所有代码都会执行,但 div 和 img 保持为空。有 jQuery 大师想帮忙吗?

编辑:

已修复!我从调用结束时删除了“json”并改用 JSON.parse(data)。这是固定代码:

function setUpUser(method) {
    $.get("scripts/loggedIn.php", {
        method: method
    })
        .done(function(data) {
    var info = JSON.parse(data);
    var imagepath = info.imagepath;
    var name = info.userName;
    console.log(imagepath);
    $('#loginForm').css("display", "none");
    $('.account').css("display", "block");
    $('#userName').text(name);
    $('#displayPic').attr("src", imagepath);
    $('.mask').css("visibility", "hidden");
    $('.loader').css("visibility", "hidden");
    });
}

似乎“json”在需要设置文本和属性之后转换了“数据”。我想。

【问题讨论】:

  • 您可能希望在#userName 位上使用.text(),除非data.userName 包含标签。
  • 可能是您的 id 错误。例如,如果您使用 ASP.NET 和母版页,那么 ID 将获得前缀。否则,也许您已经有一个 src 属性并且您正在添加第二个 src?

标签: jquery


【解决方案1】:

$('#userName').html(data.userName); --> 尝试使用 text()

$('#displayPic').attr('src', data.imagepath); --> imagepath 可能需要相对于您的 JS 文件进行格式化。

【讨论】:

  • 我刚刚尝试使用 .text(),仍然无法正常工作。另外,img src,我使用 firebug 检查,调用后 src 是空的,所以我认为重新格式化将是另一个问题,这里的主要问题是 jQuery 只是没有放入信息。我需要解析将数据放入之前的json?
  • 你确定你的 get 工作正常吗?您的 data.userName 和 data.imagepath 似乎不包含任何内容。
【解决方案2】:

尝试使用...

$('#userName').text(data.userName);
$('#displayPic').prop('src', data.imagepath);

【讨论】:

    猜你喜欢
    • 2016-11-02
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    • 2011-05-23
    • 1970-01-01
    • 2012-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多