我正在尝试使用jquery替换span标记中的类。有人能告诉我问题出在哪里吗?当我通过浏览器工具更改它时,它工作正常。无法通过jquery获取
if ($('#RequestID').val().length <= 0) {
$(".newRequestDetail > ul > li > a.span").removeClass('.k-icon k-panelbar-expand k-i-arrow-s').addClass('.k-icon k-panelbar-expand k-i-lock');
var panelbar = $("#panelBar").data('kendoPanelBar');
panelbar.bind('select', function (e) {
panelbar.clearSelection();
});
}
CSS
发布于 2017-05-08 23:12:46
您需要在'a‘选择器和'.span’选择器之间添加空格,因为它们不共享相同的HTML标记。
$(".newRequestDetail > ul > li > a. span").removeClass('.k-icon k-panelbar-expand k-i-arrow-s').addClass('.k-icon k-panelbar-expand k-i-lock');
发布于 2017-06-12 17:59:15
一种更简洁的方法是使用:
$("a.k-link > span").removeClass('k-i-arrow-s').addClass('k-i-lock');
这样,您就特别针对类k-link
的<a>
标记,我删除了额外的类删除/添加,看起来您是在删除然后添加相同的类(k-icon k-panelbar-expand
),而您实际上只需要删除k-i-arrow-s
,然后添加k-i-lock
发布于 2017-06-12 18:05:45
您的代码有一些问题。
对于$(".newRequestDetail > ul > li > a span")
addClass
,
$(".newRequestDetail > ul > li > a.span")
需要更改为removeClass
点,然后k-icon
才会消失请尝试以下操作:
if ($('#RequestID').val().length <= 0) {
$(".newRequestDetail > ul > li > a span").removeClass('k-icon k-panelbar-expand k-i-arrow-s').addClass('k-icon k-panelbar-expand k-i-lock');
var panelbar = $("#panelBar").data('kendoPanelBar');
panelbar.bind('select', function (e) {
panelbar.clearSelection();
});
}
https://stackoverflow.com/questions/43849582
复制相似问题