查找元素的jQuery AJAX HTML答案 [英] Finding element in jquery ajax html answer

查看:350
本文介绍了查找元素的jQuery AJAX HTML答案的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面code:

  ajax_obj = $阿贾克斯(
        {
        数据:数据,
        成功:函数(答案)
        {
            执行console.log(答案);
            的console.log($('#table_conferences_tbody',答案)。html的());
            的console.log($(答案).find('TBODY)HTML());
            的console.log($(答案).find('TR')的长度。);
        }
    });
 

控制台结果:

 &LT; D​​IV&GT;&LT; TBODY ID =table_conferences_tbody&GT;&LT; TR ID =conf26级=darkrow&GT;&LT; TD&GT;&LT;跨度类= 扩大和GT;&安培; NBSP;&LT; / SPAN&GT;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 26年3月20日&LT; / TD&GT;&LT; TD类=no_border&GT; 13:00&LT; / TD&GT;&LT; TD类=cm_aln no_border">&minus;</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani&LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf25级=lightrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 20.02 0.26&LT; / TD&GT;&LT; TD类=no_border&GT; 12:00&LT; / TD&GT;&LT; TD类=cm_aln no_border">&minus;</td><td>13:00</td><td>Test</td><td>Test</td><td>佩特拉Haubrich&LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf27级=darkrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 20.03 0.20&LT; / TD&GT;&LT; TD类=no_border&GT; 12:11&LT; / TD&GT;&LT; TD类=cm_aln no_border">&minus;</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr.阿丽亚娜哈恩 -  LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf24级=lightrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 30.11 0.12&所述; / TD&GT;&所述; TD类=no_border→15:00&其中; / TD&GT;&所述; TD类=cm_aln no_border">&minus;</td><td>17:00</td><td>Test</td><td>Test</td><td>佩特拉Haubrich&LT; / TD&GT;&LT; / TR&GT;&LT; / TBODY&GT;&LT; / DIV&GT;
未定义
未定义
0
 

我不明白为什么我找不到答案中的任何元素。它的工作原理与别人的答案,所以我真的在这里停留。我验证了HTML的答案,这似乎是正确的。我做了什么错?非常感谢您......

解决方案
  

&LT; TBODY&GT;

     

使用环境

     

允许的父元素:

     

要求   父&LT;表&gt; 元素,在&LT; TBODY&GT; 元素后添加   &LT;标题&GT; &LT; COLGROUP&GT; &LT; THEAD&GT; &LT; TFOOT&GT; 元素


如果可能,试着加入&LT;表&gt; 元素包装&LT; TBODY&GT;在HTML 元素。请参见 &LT;表&gt;

//添加`&LT;表&gt;'元素的'&LT父母; TBODY&GT ;`元 VAR HTML ='&LT; D​​IV&GT;&LT;表&gt;&LT; TBODY ID =table_conferences_tbody&GT;&LT; TR ID =conf26级=darkrow&GT;&LT; TD&GT;&LT;跨度类=扩大与GT ;&安培; NBSP;&LT; / SPAN&GT;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 26年3月20日&LT; / TD&GT;&LT; TD类=no_border&GT; 13:00&LT; / TD&GT;&LT ; TD类=cm_aln no_border">&minus;</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani&LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf25级=lightrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 20.02 0.26&LT; / TD&GT;&LT; TD类=no_border&GT; 12:00&LT; / TD&GT;&LT; TD类=cm_aln no_border">&minus;</td><td>13:00</td><td>Test</td><td>Test</td><td>佩特拉Haubrich&LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf27级=darkrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 20.03 0.20&LT; / TD&GT;&LT; TD类=no_border&GT; 12:11&LT; / TD&GT;&LT; TD类=cm_aln no_border">&minus;</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr.阿丽亚娜哈恩 - LT; / TD&GT;&LT; / TR&GT;&LT; TR ID =conf24级=lightrow&GT;&LT; TD&GT;&安培; NBSP;&LT; / TD&GT;&LT; TD类=cm_aln&GT; 30.11 0.12&所述; / TD&GT;&所述; TD类=no_border→15:00&其中; / TD&GT;&所述; TD类=cm_aln no_border">&minus;</td><td>17:00</td><td>Test</td><td>Test</td><td>佩特拉Haubrich&LT; / TD&GT;&LT; / TR&GT;&LT; / TBODY&GT;&LT; /表&gt;&LT; / DIV&GT;'; VAR答案= $(HTML); 执行console.log(答案); 的console.log($('#table_conferences_tbody',答案)。html的()); 的console.log(answer.find(TBODY)HTML()); //删除第二个电话给'jQuery的()``左右answer` 的console.log(answer.find('TR')的长度。); VAR withTable = "<div><table><tbody><tr>b</tr></tbody></table></div>"; 变种withoutTable =&其中; DIV&GT;&其中; TBODY&GT;&其中; TR&gt;一种与所述; / TR&GT;&所述; / tbody的&GT;&所述; / div的&gt;中; 的console.log($(withTable),$(withTable).find(TBODY)            ,$(withoutTable),$(withoutTable).find(TBODY));

&LT;脚本src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

The following code:

        ajax_obj = $.ajax(
        {
        data: data,
        success: function(answer)
        {
            console.log(answer);
            console.log($('#table_conferences_tbody', answer).html());
            console.log($(answer).find('tbody').html());
            console.log($(answer).find('tr').length);
        }
    }); 

Console Result:

<div><tbody id="table_conferences_tbody"><tr id="conf26" class="darkrow"><td><span class="expand">&nbsp;</span></td><td class="cm_aln">20.03.26</td><td class="no_border">13:00</td><td class="cm_aln no_border">&minus;</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani</td></tr><tr id="conf25" class="lightrow"><td>&nbsp;</td><td class="cm_aln">20.02.26</td><td class="no_border">12:00</td><td class="cm_aln no_border">&minus;</td><td>13:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr><tr id="conf27" class="darkrow"><td>&nbsp;</td><td class="cm_aln">20.03.20</td><td class="no_border">12:11</td><td class="cm_aln no_border">&minus;</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr. Ariane Hähn</td></tr><tr id="conf24" class="lightrow"><td>&nbsp;</td><td class="cm_aln">30.11.12</td><td class="no_border">15:00</td><td class="cm_aln no_border">&minus;</td><td>17:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr></tbody></div>
undefined
undefined
0

I don't understand why I can't find any elements within the answer. It works with others answers, so I'm really stuck here. I validated the html answer, it seems correct. What did I do wrong? Thank you very much...

解决方案

<tbody>

Usage context:

Permitted parent elements:

Within the required parent <table> element, the <tbody> element can be added after a <caption>, <colgroup>, <thead> and a <tfoot> element.


If possible, try adding <table> element to wrap <tbody> element within html. See <table>

// added `<table>` element as parent of `<tbody>` element
var html = '<div><table><tbody id="table_conferences_tbody"><tr id="conf26" class="darkrow"><td><span class="expand">&nbsp;</span></td><td class="cm_aln">20.03.26</td><td class="no_border">13:00</td><td class="cm_aln no_border">&minus;</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani</td></tr><tr id="conf25" class="lightrow"><td>&nbsp;</td><td class="cm_aln">20.02.26</td><td class="no_border">12:00</td><td class="cm_aln no_border">&minus;</td><td>13:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr><tr id="conf27" class="darkrow"><td>&nbsp;</td><td class="cm_aln">20.03.20</td><td class="no_border">12:11</td><td class="cm_aln no_border">&minus;</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr. Ariane Hähn</td></tr><tr id="conf24" class="lightrow"><td>&nbsp;</td><td class="cm_aln">30.11.12</td><td class="no_border">15:00</td><td class="cm_aln no_border">&minus;</td><td>17:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr></tbody></table></div>';
var answer = $(html);
console.log(answer);
console.log($('#table_conferences_tbody', answer).html());
console.log(answer.find('tbody').html()); // removed second call to `jQuery()` around `answer`
console.log(answer.find('tr').length);

var withTable = "<div><table><tbody><tr>b</tr></tbody></table></div>";
var withoutTable = "<div><tbody><tr>a</tr></tbody></div>";    
console.log($(withTable), $(withTable).find("tbody")
           , $(withoutTable),  $(withoutTable).find("tbody"));

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

这篇关于查找元素的jQuery AJAX HTML答案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆