【问题标题】:Jquery class selector is not workingJquery 类选择器不起作用
【发布时间】:2012-08-29 13:40:52
【问题描述】:
我有以下 html 标签。
<span class="ui-btn-text">ALFL</span>
<span class="ui-btn-text">AL</span>
我想将 ALFL 替换为
<span class="ui-btn-text">A</span>
通过 jquery。
我用过
$("span .ui-btn-text").replaceWith("<span class="ui-btn-text">A</span>");
但它不起作用。请给我一些答案。
提前致谢。
【问题讨论】:
标签:
jquery-ui
jquery
jquery-mobile
jquery-selectors
【解决方案1】:
您的选择器匹配具有 ui-btn-text 类的元素,其父元素是 span。你只需要删除空间。
我还注意到您的 replaceWith 将元素替换为具有某些内容的自身副本。无需替换元素,只需设置文本即可:
$("span.ui-btn-text").text("A");
【解决方案2】:
关于什么
$("span.ui-btn-text").replaceWith("<span class='ui-btn-text'>A</span>");
或
$("span.ui-btn-text").text("A");
【解决方案3】:
如果您只想更改 ALFL 文本,您可以执行以下操作:
var $span= $('span.ui-btn-text');
$span.each(function(){
if ($(this).text() =='ALFL') {
$(this).text('A');
}
});
Js fiddle 演示:http://jsfiddle.net/95CyN/
如果你想用类 ui-btn-text 更改所有 span 的 text/html,请执行以下操作:
// change the text inside the element
$('span.ui-btn-text').text('A');
或
// change the html content inside the element
$('span.ui-btn-text').html('A');
或
// Replace the html element
$('span.ui-btn-text').replaceWith('<span class="ui-btn-text">A</span>');
【解决方案4】:
您的选择器正在span 元素内寻找类为.ui-btn-next 的元素,因为您包含了一个多余的空格字符:
$("span.ui-btn-text").replaceWith("<span class="ui-btn-text">A</span>");
应该是你想要的。另外,如果您只需要更改元素的内容(即更改为“A”),请使用text() 或html():
$("span.ui-btn-text").text('A');
【解决方案5】:
$("span.ui-btn-text").replaceWith('<span class="ui-btn-text">A</span>');
你写的替换字符串会让 Javascript 引擎崩溃。
【解决方案6】:
Try this code friend:-
$("span.ui-btn-text").each(function () {
if ($(this).html() == "ALFL") {
$(this).html("A");
}
});
});