查找元素的jQuery AJAX HTML答案 [英] Finding element in jquery ajax html answer
问题描述
下面code:
ajax_obj = $阿贾克斯(
{
数据:数据,
成功:函数(答案)
{
执行console.log(答案);
的console.log($('#table_conferences_tbody',答案)。html的());
的console.log($(答案).find('TBODY)HTML());
的console.log($(答案).find('TR')的长度。);
}
});
控制台结果:
&LT; DIV&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">−</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">−</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">−</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">−</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;表&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; DIV&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">−</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">−</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">−</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">−</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>$c$c>$p$p>
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"> </span></td><td class="cm_aln">20.03.26</td><td class="no_border">13:00</td><td class="cm_aln no_border">−</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani</td></tr><tr id="conf25" class="lightrow"><td> </td><td class="cm_aln">20.02.26</td><td class="no_border">12:00</td><td class="cm_aln no_border">−</td><td>13:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr><tr id="conf27" class="darkrow"><td> </td><td class="cm_aln">20.03.20</td><td class="no_border">12:11</td><td class="cm_aln no_border">−</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr. Ariane Hähn</td></tr><tr id="conf24" class="lightrow"><td> </td><td class="cm_aln">30.11.12</td><td class="no_border">15:00</td><td class="cm_aln no_border">−</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...
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"> </span></td><td class="cm_aln">20.03.26</td><td class="no_border">13:00</td><td class="cm_aln no_border">−</td><td>14:00</td><td>TEst</td><td>Test</td><td>Dr. Fariss Chegrani</td></tr><tr id="conf25" class="lightrow"><td> </td><td class="cm_aln">20.02.26</td><td class="no_border">12:00</td><td class="cm_aln no_border">−</td><td>13:00</td><td>Test</td><td>Test</td><td> Petra Haubrich</td></tr><tr id="conf27" class="darkrow"><td> </td><td class="cm_aln">20.03.20</td><td class="no_border">12:11</td><td class="cm_aln no_border">−</td><td>13:11</td><td>Test</td><td>TEst</td><td>Dr. Ariane Hähn</td></tr><tr id="conf24" class="lightrow"><td> </td><td class="cm_aln">30.11.12</td><td class="no_border">15:00</td><td class="cm_aln no_border">−</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屋!