某些元素的输出无效。
当我现在启动网站时,它应该从文本区域框中获取XML并仅列出一些元素。
这是脚本:
<script>
$(document).ready(function() {
// Get text from textarea
var myxml = $("#xml").val();
$(myxml).find("resources").each(function() {
var car = $(this).find("car").text();
var car2 = $(this).find("car2").text();
var out = car+"</br>"+car2;
$("#output").append(out);
});
});
</script>
这是身体:
<p id="output"></p>
<!--textarea with the xml structure-->
<textarea rows="4" cols="50" id="xml">
<resources>
<string name="car">Ford</string>
<string name="car2">Audi</string>
</resources>
</textarea>
我不知道,错误在哪里。
答案 0 :(得分:1)
尝试此演示http://jsfiddle.net/devmgs/aV2x4/
$(document).ready(function() {
// Get text from textarea
//var myxml = $("#xml").val();
var myxml = $.parseXML( $("#xml").val() );
$xml = $( myxml )
//$(myxml).find("resources").each(function() {
//var car = $(this).find("[name='car']").text();
//var car2 = $(this).find("[name='car2']").text();
//var out = car+"</br>"+car2;
var car =($xml.find( "string[name='car']" ).text());
var car2 =($xml.find( "string[name='car2']" ).text());
var out = car+"</br>"+car2;
$("#output").append(out);
//});
});
您必须先将xml转换为jquery xml对象
答案 1 :(得分:0)
您正在尝试$(myxml).find("resources")
字符串(在此阶段myxml
是一个字符串)。看http://api.jquery.com/jQuery.parseXML/
<script type="text/javascript">
jQuery(document).ready(function()
{
// Get text from textarea
var myxml = jQuery("#xml").val();
//console.log(myxml);
var xmlDoc = jQuery.parseXML( myxml );
jQuery(xmlDoc).find("resources").each(function() {
//console.log(this);
var car = jQuery(this).find("car").text();
var car2 = jQuery(this).find("car2").text();
var out = car+"</br>"+car2;
jQuery("#output").append(out);
});
}); // ready
</script>