动态添加<img/>标记

时间:2012-09-21 01:16:53

标签: javascript jquery

最初,我的图片容器div是:

<div id="offer_image" class="img_preview_container" />
<a class="preview_overlay"></a>
</div>

然后执行:

$('#image_upload_form input').change(function() {

    if ( $(this).val() == '') return false;

    $('#image_upload_form').ajaxSubmit({
        success: function ( data ) { 
            if ( (/^http:\/\//).test(data) ) {
                $('#offer_detail input[name=image]').val(data);
                myImage = new Image();
                myImage.src = data;
                $(myImage).load(function() {
                    $('#offer_image').updateimgto(myImage.src);
                });
            }
            else {
                $('<div></div>').html(data).dialog({ title: 'Unable to upload your image' });
            }
        },
    });

});

执行该JavaScript代码后,<img>标记会添加到orignal图像容器div中:

<div id="offer_image" class="img_preview_container" />
    <a class="preview_overlay"></a>
    <img src="http://www.test.com/pic1.png", alt="uploaded img">
</div>

我不确定标签<img>的确切位置。是吗:

  1. $('#offer_image').updateimgto(myImage.src)
  2. 我在JavaScript中添加了myImage.title="my pic",但它没有添加到<img>标记输出中。为什么?

1 个答案:

答案 0 :(得分:1)

  1. 最有可能在updateimgto函数中,需要确定它。

  2. 致电updateimgto后尝试添加
    $('#offer_image img').attr('title','my pic');

    这应该有助于澄清此时是否已将图像添加到DOM并更新标题。