jQuery - img src中的变量返回undefined

时间:2013-10-26 15:41:41

标签: javascript jquery html

好的,所以我有一个看起来像这样的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中的'undefined'添加到文档中。

那么在我的html中它看起来像这样:

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

我不知道为什么,任何想法?除了这里显示的代码之外,我还没有触及变量。

1 个答案:

答案 0 :(得分:0)

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