如何修复下面的代码以读取xml文件中的IsPublic数据,以及IsPublic等于1时...打印名称和URL ...否则不执行任何操作。
<script type="text/javascript">
$(document).ready(function () {
$.ajax({
type: "GET",
url: "data.xml",
dataType: "xml",
success: xmlParser
});
});
function xmlParser(xml) {
$(xml).find("Form").each(function (if "$this.IsPublic"==1) {
$("#container").append('<div>' +
$(this).find("Name").text() + '<br/>' +
$(this).find("Url").text() +
'</div>');
}else{});
}
</script>
//Example data in data.xml
<?xml version="1.0" encoding="UTF-8"?>
<Forms>
<Form>
<Name>BRIO Tuscan Grille</Name>
<Description>Event descript Hosts: Persons name </Description>
<RedirectMessage>Great! Thanks for filling out my form!</RedirectMessage>
<Url>brio-tuscan-grille</Url>
<Email>email@email.com</Email>
<IsPublic>1</IsPublic>
<Language>english</Language>
</Form>
</Forms>
答案 0 :(得分:0)
您的代码有一些语法错误。修复它们时,它看起来像这样:
function xmlParser(xml) {
$("Form", xml).each(function () {
if ($("IsPublic", xml).text()==1) {
$("#container").append('<div>' +
$(this).find("Name").text() + '<br/>' +
$(this).find("Url").text() +
'</div>');
};
});
};
答案 1 :(得分:0)
Kreozot,你非常接近并给了我需要的方向Thx。 唯一的问题是IsPublic实际上并没有阅读单个项目。 我跳到了你的jsfiddle链接,并提出了这个,现在似乎工作。 再次感谢!
function xmlParser(xml) {
$("Form", xml).each(function () {
if ($(this).find("IsPublic").text()==1) {
$("#container").append('<div>' +
$(this).find("Name").text() + '<br/>' +
$(this).find("Url").text() +
'</div>');
};
});
};