Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
何时对元素使用jQuery.html或.text_Jquery_Performance - Fatal编程技术网

何时对元素使用jQuery.html或.text

何时对元素使用jQuery.html或.text,jquery,performance,Jquery,Performance,在我发布(并得到回复)的过程中,我发现了如何正确地将文本框的值分配给标签的值。答案是要么使用 $('#txtBranchName').val($('#lblBranchName').html()); 或 一个比另一个好吗?是否存在性能差异,或者一种方法不起作用,但另一种方法在特定情况下会起作用?设置数据 .text(“Test”)将转义任何HTML标记(呈现Test) .html(“Test”)将它们呈现为实际的html元素(呈现Test) 读取数据 .text()将仅返回文本节点(剥离标记)

在我发布(并得到回复)的过程中,我发现了如何正确地将文本框的值分配给标签的值。答案是要么使用

$('#txtBranchName').val($('#lblBranchName').html());

一个比另一个好吗?是否存在性能差异,或者一种方法不起作用,但另一种方法在特定情况下会起作用?

设置数据
.text(“Test”)
将转义任何HTML标记(呈现
Test

.html(“Test”)
将它们呈现为实际的html元素(呈现Test

读取数据
.text()
将仅返回文本节点(剥离标记)

.html()
将返回包含标记的实际html字符串



这是一个显示两种方式差异的示例。

如果标签没有HTML子项,则两种方式都是相同的,但是如果有任何子项(例如红色的“必需”标记),则最好使用
.text()
,因此您只需获得该标记,而不是生成该标记的HTML。

请参考:和

事实上,两者看起来确实有些相似,但却有很大的不同。这取决于你的使用习惯或意图,也取决于你想要实现什么

在何处使用:

  • 使用.html()对包含html元素的容器进行操作
  • 使用.text()修改通常具有单独的打开和关闭标记的元素的文本
jQuery.html()
将字符串视为html,
jQuery.text()
将内容视为文本

与.html()方法不同,.text()可以在XML和html中使用 文件。.text()方法的结果是一个包含 所有匹配元素的组合文本。(由于HTML中的变化) 在不同的浏览器中,返回的文本可能在换行符中有所不同 和其他空白。)


它不会逃避它们,它会忽略它们。@Kolink:读取值时是的。我已经更新了我的答案,以包含两种方式的信息。它不会将它们呈现为文本。它只从没有样式的html标记中提取文本。@Exception:我说过,当读取数据时,
。text
只返回文本节点。检查我的链接小提琴,你会看到它的作用。写作与阅读相关
$('#txtBranchName').val($('#lblBranchName').text());