尝试使用Jquery在xml中使用attr检查父元素的存在性

尝试使用Jquery在xml中使用attr检查父元素的存在性,jquery,ajax,xml,Jquery,Ajax,Xml,我试图创建一个if语句,检查外部xml中是否存在具有特定id的父级。如果它存在,我希望它编写它,如果它不存在,我希望它在html中回显默认文本。我让它返回[Object][Object],但是如果我从xml中删除父对象,我就不能让它运行else语句。有什么想法吗 function xml() { $(document).ready(function(){ $("div").append("<ul></ul>"); $.ajax({ type

我试图创建一个if语句,检查外部xml中是否存在具有特定id的父级。如果它存在,我希望它编写它,如果它不存在,我希望它在html中回显默认文本。我让它返回[Object][Object],但是如果我从xml中删除父对象,我就不能让它运行else语句。有什么想法吗

function xml() {
$(document).ready(function(){
    $("div").append("<ul></ul>");
    $.ajax({
        type: "GET",
        url:"xml.xml",
        dataType: "xml",
        success: function(d) {
         $(d).find('parent[id="1111"]').each(function(){
                if ($(this) != undefined){
               document.write('<li<b>something</b>'
                                +$(this).find("id").text()
                               +'</li><li><b>else </b>'+
                              $this).find("Status").text()
                    +'</li>';
                }
                else{
                document.write('<li id="1104"><b>something:</b>'
                                +' 1104</br><li><b>else:</b> Down ');}

})
}
})
            });

        }

<root>
<parent id="1111">
 <child> Hello World</child
</parent>
</root>
函数xml(){
$(文档).ready(函数(){
$(“div”)。追加(“
    ”); $.ajax({ 键入:“获取”, url:“xml.xml”, 数据类型:“xml”, 成功:功能(d){ $(d).find('parent[id=“1111”]”)。每个(函数(){ 如果($(此)!=未定义){
    document.write(“您正在解析XML,就像它是HTML一样。取而代之的是使用。然后您的
    查找应该可以工作。您不需要
    每个

    success: function(d) {
        var elm = $($.parseXML(d).find('parent[id="1111"]'));
        if (elm[0]) {
            // Found it
        } else {
            // Didn't find it
        }
    }
    
    另外,请注意,在页面的主解析完成后调用
    document.write
    几乎从来都不是一个好主意:它通过隐式调用
    document.open
    来彻底清除页面。您可能想使用jQuery的
    append
    appendTo
    prepend
    de>prependTo

    另外,
    $(“div”).append(
      ”;
      将在页面上的每个
      div
      中添加一个
      ul

      下面是一个将列表附加到一个特定div的示例。我将其调用两次,一次使用包含元素的XML,一次使用不包含元素的XML:

      功能fakeAjaxResponse(目标,d){
      var ul=$(“
        ”)。附录(目标); var elm=$($.parseXML(d)).find('parent[id=“1111”]”); if(elm[0]){ //找到了 $(“
      • ”).text(“找到元素:+elm.text()).appendTo(ul); }否则{ //我没找到 $(“
      • ”).text(“未找到元素”).appendTo(ul); } } fakeAjaxResponse( “#第一个结果”, “我是1111” ); fakeAjaxResponse( “#第二个结果”, “我是1122” );
      
      
      请同时粘贴xml结构。我建议您从当前任务中退一步,从头到尾阅读。这只需要一两个小时,并且会立即回报您。浏览一些jQuery教程可能也很有用。这与PHP无关,我已经删除了
      PHP
      标记。