如何使用jQuery的.html()或.text()获取空白

时间:2011-11-18 03:28:01

标签: jquery html

我有以下HTML:

<div> </span>
<span>  </span>

如何获得包含原始空白的.innerHTML(或.innerText)?我尝试了jQuery的.html().text(),但它们返回一个空字符串。

6 个答案:

答案 0 :(得分:5)

请记住,HTML会忽略连续的空格。因此,如果您有超过1,它将不会出现。如果jQuery .html()方法不适合你(也许它们在里面修剪),你也可以直接得到相同的内部html

alert($('#div').get(0).innerHTML)

答案 1 :(得分:3)

你需要使用.contents()然后获取nodeValue ... 像这样的东西,

$('span').contents()[0].nodeValue

这是一个fiddle

答案 2 :(得分:1)

您可以为所需的每个空间使用非中断空格html实体。

&nbsp;

有关html实体的更多信息 - http://www.w3schools.com/html/html_entities.asp

答案 3 :(得分:0)

HTML中空白空格长于一个空格被视为空字符串 - 没有数据。我想你需要使用&amp; nbsp;实现你的目标。

答案 4 :(得分:0)

HTML是白色空间不敏感的。会把它包装在预制块中吗?

<pre>       </pre>

答案 5 :(得分:0)

我尝试使用以下代码,它可以工作 - 我可以看到在输入框中添加了空白

<script>
$(document).ready(function() {
  // Handler for .ready() called.
  alert($(".d").text());
  $("#a").val($(".d").text());
});

</script>


</head>
<body>
<div class="d"> </span>
<span class="c">  </span>
<input id="a"/>