在ADF中使用Jquery和动态生成的id

时间:2016-02-25 13:27:00

标签: javascript jquery oracle-adf

我使用以下代码将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();

你能建议吗?

2 个答案:

答案 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