Мне нужно щелкнуть элемент списка, чтобы заменить текст в div текстом с узла в XML-файле.replaceWith не работает во второй раз
Я нажимаю на элемент списка и сохраняю результат в переменной. Затем я загружаю xml, нахожу заголовок нужного мне узла и делаю переменную результата. Затем я запускаю оператор if, который, если две переменные равны, помещает xml в div.
В первый раз, когда я нажимаю на элемент списка, это работает. Правильный элемент в списке сопоставляется с правильным узлом в xml и правильный текст помещается в div.
Но когда я затем нажимаю на другой элемент списка, текст не заменяется. Предупреждение показывает, что второй щелчок получил правильную информацию, но в конце содержание div не заменяется.
Демо здесь: http://mwebphoto.com/mwebphoto/html/3rdJqueryPage.html
Код здесь:
<body>
<div class="slideshowContainer">
<div id="slideshow"></div>
</div>
<ul id="gallery_id">
<li id="newYork">New York</li>
<li id="disconnection">Disconnexion</li>
<li id="jackAtSea">Jack at Sea</li>
</ul>
<script>
$(document).ready(function(){
$("#gallery_id li").on('click', function(e) {
var htmlTitle = (this.id);
$.ajax({
type: "GET",
url: "/mwebphoto/xml/albums.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('photoAlbum').each(function(){
var xmlAlbum= $(this);
var xmlTitle = $(this).find('title').text();
var xmlEmbedCode = $(this).find('embedCode').text();
alert ('this is html titled ' + htmlTitle);
alert ('this is xml titled ' + xmlTitle);
if(xmlTitle=htmlTitle)
alert ('this is matched xml title' + xmlTitle);
$("#slideshow").replaceWith(xmlTitle);
});
}
});
});
});
</script>
</body>
Помощь ценится. Я не спрашиваю легко. Я потратил много часов на это и исследовал его, как я могу себе представить. Мне не хватает чего-то очень простого, но я просто не могу ее найти.
xmlTitle включает элемент с идентификатором слайд-шоу? если нет, то поэтому он не работает второй раз. #slideshow не существует. Скорее всего, вам действительно нужен .html, а не replaceWith. –
if (xmlTitle = htmlTitle) выглядит неправильно. Вы имели в виду if (xmlTitle == htmlTitle)? –