使用jQuery选择当前div的第一个图像

时间:2012-11-06 00:20:27

标签: jquery image

我刚刚发布了一个类似的问题,发现它并不是我所需要的。道歉。

这是我正在使用的代码:

jQuery(document).ready(function($) { 

  $('.upload_button').click(function() {

    targetfield = $(this).prev('.logo_url');
    tb_show('', 'media-upload.php?type=image&TB_iframe=true');

    window.send_to_editor = function(html) {
      imgurl = $('img',html).attr('src');
      jQuery(targetfield).val(imgurl);
      tb_remove();

      $('.upload_preview img').attr('src',imgurl); // THIS IS WHERE I'M HAVING PROBLEMS

      $('#submit_options_form').trigger('click');
    };

    return false;

  });
});

我不是最好的jQuery,我仍然是一些新的东西。我需要在预览类中填充img标记的url,但仅限于获取url的那个url。我现在拥有的将填充每个具有该类的图像标记。非常感谢任何帮助。

我需要它来填充它,就像填充输入字段一样。

修改

以下是一些HTML示例。我在页面上使用了多个这些。

<li class="slide">

            <input class="logo_url" name="theme_wptuts_options[logo]" value="src[]" />
                <input class="upload_button" type="button" class="button" value="<?php _e( 'Upload Logo' ); ?>" />

                <div class="upload_preview" style="min-height: 100px;">
                    <img style="max-width:100%;" src="src[]" />
                </div>

            <button class="remove_slide button-secondary">Remove This Slide</button>

</li>

4 个答案:

答案 0 :(得分:2)

使用:eq(0),它将选择第一个元素,imho是与.first().last()等相比的最佳方式:)

$('.upload_preview img:eq(0)').attr('src',imgurl);

答案 1 :(得分:1)

imgurl * EDITED 11/05/2012美国东部时间下午9:47 *

这可能是它!我不能在小提琴中测试,因为我无法在小提琴中执行window.send函数。

Revised Working Fiddle

<强> JQuery的

var whichLi;

jQuery(document).ready(function() {

    $('.upload_button').click(function() {

       whichLi= $(this).parent('li');

       targetfield = $(this).prev('.logo_url');
        tb_show('', 'media-upload.php?type=image&amp;TB_iframe=true');

        window.send_to_editor = function(html) {


            imgurl = $('img', html).attr('src');
            jQuery(targetfield).val(imgurl);
            tb_remove();

            $(whichLi).find('img').attr('src', imgurl);
            $('#submit_options_form').trigger('click');
        };

        return false;

    });
});

答案 2 :(得分:1)

经过大量的反复试验,这就是我最终得到的,就像我想要的那样。我感谢大家的帮助和回答。

jQuery(document).ready(function($) { 
$('.upload_button').click(function() {
     targetfield = $(this).prev('.logo_url');
     imgpreview = $(this).parent().find('img');
     tb_show('', 'media-upload.php?type=image&amp;TB_iframe=true');
window.send_to_editor = function(html) {
     imgurl = $('img',html).attr('src');
     jQuery(targetfield).val(imgurl);
     tb_remove();
     $(imgpreview).attr('src', imgurl);
     $('#submit_options_form').trigger('click');
};
return false;
});
});

答案 3 :(得分:0)

:first选择器完成工作:

$('.upload_preview:first img').attr('src', imgurl);