3
if($("#target").html().trim().length>0){do sth}

奇怪的是,我收到错误说 Uncaught TypeError: Cannot read property 'length' of undefined and in the html I have

<div id="target"><table><tr><td>ABC</td></tr></table></div>

奇怪的问题是,如果我这样做console.info($("#target").html().trim().length),它会告诉我一些数字。

我发现最奇怪的事情是避免该错误的唯一方法是更改​​ html 内容

<div id="target">ABC</div>

没有 html 表,它不会抛出那个错误

4

2 回答 2

4

改变你的$("#target").html().trim().length

$("#target").text().trim().length

检查这个jsfiddle,你得到的长度为51,因为它给出了<div>标签之间的html长度

.html()

获取匹配元素集中第一个元素的 HTML 内容。

。文本()

获取匹配元素集中每个元素的组合文本内容

于 2012-09-05T06:47:25.200 回答
1

尝试直接使用innerHTML 或innerText 而不是Jquery

于 2012-09-05T07:08:37.057 回答