jQuery - img src 中的变量返回未定义

jQuery - variable inside img src returns undefined

本文关键字:变量 返回 未定义 img src jQuery      更新时间:2023-09-26

好的,所以我有一个看起来像这样的AJAX调用(省略了不重要的代码):

 function updateChat(){
    var userAvatar = $('.user-avatar').val();
    $.ajax({
       type: "POST",
       url: "index.php",
       data:{
           "AJAX": 'support-chat-process'
       },
       dataType: "JSON",
       success: function(data){
           var append ='somehtml';
           alert(userAvatar); // works!
           append += '<img src="' + userAvatar + '" height="30" width="30">'; 
           append += '<p>'+userAvatar+'</p>'; // also works!
           $('body').append(append);
       }
    });
}

如您所见,我正在尝试从变量内的隐藏输入字段中获取一个值,该变量将向文档添加 HTML IMG 标签。

从该字段(我放入userAvatar)获得的值是正确的。在故障代码之前和之后向变量发出警报也会输出正确的字符串。

如果我将变量放在<p>标签中,它也可以工作。

但是,当我像上面一样将变量添加到 IMG src 时,当它添加到文档中时,我在 src 内得到"未定义"。

所以在我的 html 中它看起来像这样:

      <img src="undefined" height="30" width="30">

我不知道为什么,有什么想法吗?除了此处显示的代码 im 之外,我没有触及变量。

好的,

我已经找到了原因。我在代码中有一个 if/else 语句,由于拼写错误,它调用了错误的变量。我了解到,下次我最好不要在问题中遗漏我认为没有必要的代码。