当/jquery为空时忽略空xml节点

当/jquery为空时忽略空xml节点,jquery,xml,ajax,Jquery,Xml,Ajax,我找到并编辑了这段代码,以使用jquery在网页上显示来自在线日历的xml提要的元素。是否有一种方法可以让我包含条件,以便在填充节点时显示该节点的信息,并在节点为空时忽略该信息?例如,要包括imagepath、imagetext和格式化它所需的html,但在没有imagepath和imagetext信息时忽略所有这些信息 <script> $(document).ready(function () { $.ajax({ type: "GET",

我找到并编辑了这段代码,以使用jquery在网页上显示来自在线日历的xml提要的元素。是否有一种方法可以让我包含条件,以便在填充节点时显示该节点的信息,并在节点为空时忽略该信息?例如,要包括imagepath、imagetext和格式化它所需的html,但在没有imagepath和imagetext信息时忽略所有这些信息

<script>
$(document).ready(function () {
    $.ajax({
        type: "GET",
        url: "http://orion.lib.mi.us/evanced/lib/eventsxml.asp?dm=exml&lib=0&nd=90",
        dataType: "xml",
        success: xmlParser,
        error: function(){alert("We're sorry. Something didn't load correctly.");}
    });
});

function xmlParser(xml) {
    $(xml).find("item").each(function () {
        var xml_image       = $(this).find('imagepath').text();
        var xml_imagetext   = $(this).find('imagetext').text();
        var xml_title       = $(this).find('title').text();
        var xml_date        = $(this).find('date').text();
        var xml_time        = $(this).find('time').text();
        var xml_location    = $(this).find('location').text();
        var xml_link        = $(this).find('link').text();
        var xml_description = $(this).find('description').text();
        $(".main").append('<div class="event"><div class="logo"><img alt="' + xml_imagetext + '" src="' + xml_image + '" /></div><p class="title"><a href="' + xml_link + '">' + xml_title + '</a></p><p class="when">' + xml_date + ' at ' + xml_time + '</p><p class="location">Location: ' + xml_location + '</p><p class="description">' + xml_description + '</p><p class="link"><a href="' + xml_link + '">More Information</a></p></div>');
    });}
</script>

$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“http://orion.lib.mi.us/evanced/lib/eventsxml.asp?dm=exml&lib=0&nd=90",
数据类型:“xml”,
成功:xmlParser,
错误:函数()
});
});
函数xmlParser(xml){
$(xml).find(“item”).each(函数(){
var xml_image=$(this).find('imagepath').text();
var xml_imagetext=$(this.find('imagetext').text();
var xml_title=$(this).find('title').text();
var xml_date=$(this).find('date').text();
var xml_time=$(this.find('time').text();
var xml_location=$(this).find('location').text();
var xml_link=$(this).find('link').text();
var xml_description=$(this).find('description').text();
$(“.main”).append(“

+xml\u date+”在“+xml\u time+”

位置:“+xml\u location+”

+xml\u description+”

); });}
在将内容附加到main之前,您可能只想添加一个条件

或者,如果要显示不同的内容,请按照以下方式执行操作:

var hasImage = xml_image != "" && xml_imagetext != "";
var html = "<div class='event'>" +
    ((hasImage) ? "<img src='" + xml_image + "' alt='" + xml_imagetext + "' />" : "")
    + "</div>";
var hasImage=xml\u image!=“”&xml\u图像文本!="";
var html=“”+
((hasImage)?“”:“”)
+ "";

非常感谢。我原以为那样会奏效,但我的尝试总是打破了这一页。
var hasImage = xml_image != "" && xml_imagetext != "";
var html = "<div class='event'>" +
    ((hasImage) ? "<img src='" + xml_image + "' alt='" + xml_imagetext + "' />" : "")
    + "</div>";