jQuery .insertAfter()和.append()不能使用AJAX调用

时间:2015-01-22 18:15:19

标签: javascript jquery html ajax

我正在尝试做一些我认为已经完成了100次的事情...我在ajax调用之后获取并创建一个新图像并尝试将其插入到适当的前面 - 存在div

HTML看起来像这样

<div class="preload">
    <div class="createYourOwn">...</div>
    <img src="source.com"/>
    <img src="source.com"/>
    <img src="source.com"/>
    <img src="source.com"/>
    <img src="source.com"/>
</div?

AJAX调用是这样做的:

$.post("script.php", {phone:phone}, function(data){
    if(data){
        var newImage = "<img src='https://api.twilio.com" + data + "/>";
        $(newImage).insertAfter('.createYourOwn');
    }
});

我也试过这个:

$("<img src='https://api.twilio.com" + data + "/>").insertAfter('.createYourOwn');

而且:

$(newImage).append('.preload');

尽管这并没有达到预期的效果。

我希望在.createYourOwn内的.preload div之后插入我收到的图像。

不确定发生了什么。但没有任何事情发生,没有错误,甚至没有带有borked src的图像。什么都没发生。

有人有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

正确连接字符串:

替换它:

var newImage = "<img src='https://api.twilio.com" + data + "/>";
// you're missing to close quote for src              here ^^ 

有了这个:

var newImage = "<img src='https://api.twilio.com" + data + "' />";

或切换引号:

var newImage = '<img src="https://api.twilio.com' + data + '" />';