我如何使用jQuery将文本添加到特定的div元素?
我遇到了jquery的问题。我的HTML是
现在我尝试使用Jquery在span中添加文本
$j('span.test').text('Welcome');
之后就变成了,
Welcome Welcome
但是,我正在努力实现的是,
Welcome
我怎么能在jquery中做到这一点?
谢谢
几种可能的选择
其他人已经提供了他们的答案,但让我给你一些更多的选择。
$("span.test:first").text("Welcome"); $("#first span.test").text("Welcome"); $("span.test").first().text("Welcome"); $("span.test").eq(0).text("Welcome"); $("span.test", "#first").text("Welcome");
第二个和最后一个可能是最快的,因为它们通过ID定位特定容器。
(内部jQuery优化可能certificate我的任何未来版本都有问题)
性能比较
这是一个JSPerf测试 ,性能比较了更高的可能性。 正如预期的那样,第二种和最后一种方法是最快的,因为元素选择非常简单。 我已尝试在Chrome上运行它们,如果您愿意,可以在其他浏览器中运行它们并查看差异。
$('#first span.test').text('Welcome');
jQuery选择器是CSS选择器,扩展了一点魔力。 您可以在此处找到您需要了解的所有信息: http : //api.jquery.com/category/selectors/
您需要使用:first
选择器表示您只想将文本添加到选择器找到的第一个元素。 试试这个:
$j('span.test:first').text('Welcome');
示例小提琴
或者,您可以使用父div的id
使选择器唯一:
$j('#first .test').text('Welcome');
在这个例子中你可以做什么RoRyMcCrossan对于一般选择,我建议你看看这个: http ://api.jquery.com/child-selector/
或者你可以使用它
由于您有一个ID,通常在一个页面上是唯一的,因此最好使用以下内容:
$("#first span.test").text("Welcome");