jQuery: используйте "имя" как img "src" - PullRequest
2 голосов
/ 14 сентября 2009

мой вопрос: у меня есть тег img

<img class="myclassname" src="1.jpg" name="2.jpg">

Я бы хотел изменить источник img (в настоящее время 1.jpg) на тот, который я написал в атрибуте «name» (2.jpg), используя jquery.

почему это не работает?

$(".myclassname").attr("src", $(this).attr("name"));  

спасибо за любую помощь! приветствует мафку

(ps: скрипт, конечно, более сложный, но это проблема, которую я застрял)

Ответы [ 4 ]

4 голосов
/ 14 сентября 2009

Вам нужно будет перебрать все теги с этим именем класса, так как $ (this) неизвестно в этом контексте.

Попробуйте что-то вроде:

$(".myclassname").each(function() {
    $(this).attr("src", $(this).attr("name"));
});
2 голосов
/ 14 сентября 2009
$(".myclassname").each(function (){
$(this).attr("src",$(this).attr("name"));
});

Проблема с вашим кодом в том, что jQuery не знает, что такое "это" в этом контексте.

1 голос
/ 14 сентября 2009

Надеюсь, это поможет ...

        $(".test").each(function() {
            $(this).attr("src", $(this).attr("name"));
            alert($(this).attr("src"));
        });
0 голосов
/ 14 сентября 2009

Сохранить ссылку на myclassname в переменной. Сделаю ваш сценарий более понятным, чтобы читать также:

var _myClassname = $(".myclassname");
_myClassname.attr("src", _myClassname.attr("name"));
...