我使用以下代码将p:r:0:abc
标识为p\\:r\\:0\\:abc
function getId(comp) {
var id = comp.getClientId().split(':').join('\\\\:');
return id;
}
我正在使用以下
生成的ID$(id).css("background-image", "url('../something.png')");
$(id).slideToggle();
它没有改变背景或做动画
但是,如果我将id硬编码为低于其正常工作
$(`#p\\:r\\:0\\:abc`).css("background-image", "url('../something.png')");
$(`#p\\:r\\:0\\:abc`).slideToggle();
你能建议吗?
答案 0 :(得分:1)
创建选择器时,您缺少ID选择器#
。它应该是:
$('#'+id); // id = 'p\\:r\\:0\\:abc'
您可以使用属性等于选择器来处理具有特殊字符的选择器:
var id= 'p:r:0:abc';
$('[id="'+id+'"]').css("background-image", "url('../something.png')");
$('[id="'+id+'"]').slideToggle();
答案 1 :(得分:1)
您的加入中有1个childMap.forEach((k,v) ->
mainMap.computeIfPresent(k, (d,m) -> m.keySet().removeAll(v) && m.isEmpty()? null: m));
太多。
您只需要1 loadData
即可逃脱\
- \
。
:
p\:r\:0\:abc