Скопируйте атрибут alt изображения в текст (и перезапишите его) в jQuery / Javascript

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

Название говорит само за себя! Я некоторое время боролся с этим кодом и не могу разобраться в проблеме

 <div id="slider">
            <ul>
                <!--          -->
                <li><a target="_blank" href="ANOUK-2014-De-l'orient-a-partout-20x20.jpg"><img src="ANOUK-2014-De-l'orient-a-partout-20x20.jpg" alt="123 chf"/></a></li>
                <li>
                    <div class="artSpecs">
                        <table>
                            <tr><td><p>Titre :</p></td><td><p>De l'orient à partout</p></td></tr> <!-- Titre -->
                            <tr><td><p>Medium :</p></td><td><p>Peinture</p></td></tr> <!-- Medium -->
                            <tr><td><p>Dimensions :</p></td><td><p>20 x 20 cm</p></td></tr> <!-- Dimensions -->
                            <tr><td><p>Année :</p></td><td><p>2014</p></td></tr> <!-- Année -->
                            <tr><td><p>Artiste :</p></td><td><p>Anouk</p></td></tr> <!-- Artiste -->
                            <tr><td><p>Prix :</p></td><td><p>000 CHF.</p></td></tr> <!-- Prix -->
                        </table>
                    </div>  
                </li>
                <!--          -->


                <!--          -->
                <li><a target="_blank" href="ANOUK-2014-Tout-en-beaute-20x20.jpg"><img src="ANOUK-2014-Tout-en-beaute-20x20.jpg" alt="456 chf"/></a></li>
                <li>
                    <div class="artSpecs">
                        <table>
                            <tr><td><p>Titre :</p></td><td><p>Tout en beauté</p></td></tr> <!-- Titre -->
                            <tr><td><p>Medium :</p></td><td><p>Peinture</p></td></tr> <!-- Medium -->
                            <tr><td><p>Dimensions :</p></td><td><p>20 x 20 cm</p></td></tr> <!-- Dimensions -->
                            <tr><td><p>Année :</p></td><td><p>2014</p></td></tr> <!-- Année -->
                            <tr><td><p>Artiste :</p></td><td><p>Anouk</p></td></tr> <!-- Artiste -->
                            <tr><td><p>Prix :</p></td><td><p>000 CHF.</p></td></tr> <!-- Prix -->
                        </table>
                    </div>  
                </li>
                <!--          -->


                <!--          -->
                <li><a target="_blank" href="ANOUK-Ecriture-musicale-50x50-tech.mixte-sur-toile.jpg"><img src="ANOUK-Ecriture-musicale-50x50-tech.mixte-sur-toile.jpg" alt="123 chf"/></a></li>
                <li>
                    <div class="artSpecs">
                        <table>
                            <tr><td><p>Titre :</p></td><td><p>Ecriture musicale</p></td></tr> <!-- Titre -->
                            <tr><td><p>Medium :</p></td><td><p>Peinture</p></td></tr> <!-- Medium -->
                            <tr><td><p>Dimensions :</p></td><td><p>50 x 50 cm</p></td></tr> <!-- Dimensions -->
                            <tr><td><p>Année :</p></td><td><p>2014</p></td></tr> <!-- Année -->
                            <tr><td><p>Artiste :</p></td><td><p>Anouk</p></td></tr> <!-- Artiste -->
                            <tr><td><p>Prix :</p></td><td><p>000 CHF.</p></td></tr> <!-- Prix -->
                        </table>
                    </div>  
                </li>
                <!--          -->


                <!--          -->
                <li><a target="_blank" href="ANOUK-Note-de-musique-40x40-tech.mixte-sur-toile.jpg"><img src="ANOUK-Note-de-musique-40x40-tech.mixte-sur-toile.jpg"/></a></li>
                <li>
                    <div class="artSpecs">
                        <table>
                            <tr><td><p>Titre :</p></td><td><p>Note de Musique</p></td></tr> <!-- Titre -->
                            <tr><td><p>Medium :</p></td><td><p>Peinture</p></td></tr> <!-- Medium -->
                            <tr><td><p>Dimensions :</p></td><td><p>40 x 40 cm</p></td></tr> <!-- Dimensions -->
                            <tr><td><p>Année :</p></td><td><p>2014</p></td></tr> <!-- Année -->
                            <tr><td><p>Artiste :</p></td><td><p>Anouk</p></td></tr> <!-- Artiste -->
                            <tr><td><p>Prix :</p></td><td><p>000 CHF.</p></td></tr> <!-- Prix -->
                        </table>
                    </div>  
                </li>
                <!--          -->


                <!--          -->
                <li><a target="_blank" href="ANOUK-2014-Balade-ame-corps-80x60.jpg"><img src="ANOUK-2014-Balade-ame-corps-80x60.jpg"/></a></li>
                <li>
                    <div class="artSpecs">
                        <table>
                            <tr><td><p>Titre :</p></td><td><p>Balade âme et corps</p></td></tr> <!-- Titre -->
                            <tr><td><p>Medium :</p></td><td><p>Peinture</p></td></tr> <!-- Medium -->
                            <tr><td><p>Dimensions :</p></td><td><p>80 x 60 cm</p></td></tr> <!-- Dimensions -->
                            <tr><td><p>Année :</p></td><td><p>2014</p></td></tr> <!-- Année -->
                            <tr><td><p>Artiste :</p></td><td><p>Anouk</p></td></tr> <!-- Artiste -->
                            <tr><td><p>Prix :</p></td><td><p>000 CHF.</p></td></tr> <!-- Prix -->
                        </table>
                    </div>  
                </li>
                <!--          -->
  

и проблемный код jQuery

 $(document).ready(function() {
var count = $("#slider ul").children("li").length;
for (i = 1; i < count; i = i 2) {
    alert(i);
    $("#slider ul li:nth-of-type(i 1) tr:nth-last-of-type(1) td:nth-last-of-type(1) p").text($("#slider ul li:nth-of-type(i) img").attr("alt"));}
  

});

Вот jsfiddle :

http://jsfiddle.net/xcbnE/38/

(Я ввел alert() в цикл, просто чтобы посмотреть, работает ли это, и на самом деле оно появляется только один раз! Что доказывает, что проблема есть, но где??

Кстати, если скрипт работает, вы должны увидеть, что цена («Prix») первой таблицы в панели результатов JsFiddle изменилась с 000 швейцарских франков. до 123 швейцарских франков

В чем проблема? Я просто не могу в этом разобраться.

Спасибо за ответ 🙂

Редактировать :

Хорошо, теперь мне ДЕЙСТВИТЕЛЬНО нужно сделать это таким образом :

http://goo.gl/ozO6PT

ПОЧЕМУ на этот раз это не сработает?

Пожалуйста, добрые люди, мне НУЖЕН быстрый ответ, так как я очень скоро приближаюсь к своему крайнему сроку!!

ПРАВИТЬ ПРАВИТЬ ::

Хорошо, я решил свою проблему!

Ответ №1:

Ваш селектор неправильно сформирован. Проверьте это обновление, в основном строка правильно сформирована:http://goo.gl/oUZK8T