我正在尝试解析一些XML数据以显示在基本网页中。 XML如下:
<response>
<variable name = "Input1">False</variable>
<variable name = "Input2">False</variable>
<variable name = "Input3">False</variable>
<variable name = "Input4">False</variable>
<variable name = "Input5">False</variable>
<variable name = "Input6">False</variable>
<variable name = "Input7">False</variable>
<variable name = "Input8">False</variable>
</response>
我有一些显示的代码,但目前我在1个文本区域显示所有8个变量。
$(document).ready(function()
{
$.ajax({
type: "GET",
//To change controller, please chnage the IP below.
url: "http://172.20.2.17/query/variable?Input1&Input2&Input3&Input4&Input5&Input6&Input7&Input8",
dataType: "xml",
success: parseSystem
});
})
//Parse System XML Response
function parseSystem(xml)
{
$(xml).find("response").each(function()
{
$("#Input1").append($(this).find("variable").text())
$("#Input2").append($(this).find("variable").text())
$("#Input3").append($(this).find("variable").text())
$("#Input4").append($(this).find("variable").text())
$("#Input5").append($(this).find("variable").text())
$("#Input6").append($(this).find("variable").text())
$("#Input7").append($(this).find("variable").text())
$("#Input8").append($(this).find("variable").text())
});
我希望XML中的Input1链接到HTML中的#Input1,等等。
感谢您的时间,真的很感激。
答案 0 :(得分:3)
$(xml).find("response").each(function()
{
$("#Input1").append($(this).find("variable[name=Input1]").text())
$("#Input2").append($(this).find("variable[name=Input2]").text())
$("#Input3").append($(this).find("variable[name=Input3]").text())
$("#Input4").append($(this).find("variable[name=Input4]").text())
$("#Input5").append($(this).find("variable[name=Input5]").text())
$("#Input6").append($(this).find("variable[name=Input6]").text())
$("#Input7").append($(this).find("variable[name=Input7]").text())
$("#Input8").append($(this).find("variable[name=Input8]").text())
});
但是有一个更灵活的功能:
$(xml).find("response").each(function(){
$(this).find("variable").each(function(){
var id = $(this).attr("name");
$("#"+id).append($(this).text())
});
});
答案 1 :(得分:0)
$(xml).find('response').each(function (index, element) {
var $element = $(element);
var $variables = $('variable', $element);
$variables.each(function (index, variable) {
var $variable = $(variable);
var controlId = $variable.attr('name');
var text = $variable.text();
var $control = $('#' + controlId);
$control.append(text);
});
});