我使用下面的代码从AJAX get请求解析xml,为什么所有元素都出现在html之后?我做错了什么?
<li><section><blockquote><p></p></blockquote></section></li>
<h1>QUOTE</h1>
<img class="truffle" src="Content/Images/truffles/pecan-caramel-truffle.png?text=pecan-caramel-truffle">
<h2>NAME</h2>
解析AJAX
$(result).find('ContestResult').each(function () {
var name = $(this).find('FirstName').text();
var imgName = $(this).find('ImageName').text();
var quote = $(this).find('quote').text();
var theName = "NAME";
var sliderItem = '<li><section><blockquote><p>' + quote + '</p></li></blockquote>';
sliderItem += '<h1>~' + name + '</h1></section>';
sliderItem += '<img class="yep" src="' + imgName + '" />';
sliderItem += '<h2>' + theName + '</h2>';
sliderItem += '</li>';
$("ul#slider").append(sliderItem);
i++; //Iterate variable});
答案 0 :(得分:1)
我觉得这是因为你没有结束</ul>
。因此,jQuery append()
函数会尝试查找ul
中的最后一个字符,并认为您的HTML也是此ul
的一部分。
我在http://jsfiddle.net/sudipta/93AqB/
创造了一个小提琴这是我在HTML中所做的所有更改,它似乎在HTML之前添加了您的数据:
<ul id="slider">
<li>
<section>
<blockquote>
<p>Foo</p>
</blockquote>
</section>
</li>
</ul>
<h1>QUOTE</h1>
<img class="truffle" src="Content/Images/truffles/pecan-caramel-truffle.png?text=pecan-caramel-truffle">
<h2>NAME</h2>