在 span 中设置文本

我有这个跨度

<a title="Prev" data-event="click"
data-handler="prev" class="ui-datepicker-prev   ui-corner-all">
<span class="ui-icon ui-icon-circle-triangle-w">Prev</span>
</a>

我需要将 span 的文本设置为 <<,而不是它的当前文本 Prev

我在下面尝试了这个方法,但是它并没有像我预期的那样改变文本?

 $(".ui-icon .ui-icon-circle-triangle-w").html('<<');
254612 次浏览

这是因为您选择了错误的选择器。根据您的标记,.ui-icon.ui-icon-circle-triangle-w"应该指向同一个 <span>元素。因此,你应该使用:

$(".ui-icon.ui-icon-circle-triangle-w").html("<<");

或者

$(".ui-datepicker-prev .ui-icon").html("<<");

或者

$(".ui-datepicker-prev span").html("<<");

改为使用 .text(),并更改您的选择器:

$(".ui-datepicker-prev .ui-icon.ui-icon-circle-triangle-w").text('<<');

——查看 DEMO ——

$('.ui-icon-circle-triangle-w').text('<<');

你得修好你的选择器。虽然 CSS 语法要求将多个类分隔开,但选择器语法要求它们直接连接,并且使用点前缀:

$(".ui-icon.ui-icon-circle-triangle-w").text(...);

或者更好:

$(".ui-datepicker-prev > span").text(...);

为 span 提供一个 ID,然后更改目标 span 的文本。

$("#StatusTitle").text("Info");
$("#StatusTitleIcon").removeClass("fa-exclamation").addClass("fa-info-circle");


<i id="StatusTitleIcon" class="fa fa-exclamation fa-fw"></i>
<span id="StatusTitle">Error</span>

在这里“错误”文字将成为“信息”,他们的字体漂亮的图标也将改变。

试试看。 它将首先查找包含类“ ui-icon-Circle-three-w”的 span 的锚标记,然后将 span 的文本设置为“ < <”。

$('a span.ui-icon-circle-triangle-w').text('<<');