使用冒号的Javascript复合组件ID

时间:2014-01-21 10:49:13

标签: javascript jquery

我有一些复合组件,我试图绑定他孩子们的一些jquery事件。最重要的是我想为这个selectoneradio的每个输入绑定事件,thoose输入在selectoneradio id后获取名称,不幸的是这个id可以包含':'。我替换:for \:但它总是说

Error: Syntax error, unrecognized expression: input[name=form1\\:j_idt47\\:radioSelect]

代码:

cc:implementation>
        <h:selectOneRadio id="#{cc.attrs.id}"
                          value="#{cc.attrs.value}" required="#{cc.attrs.required}">

            <cc:insertChildren/>
        </h:selectOneRadio>

<script type="text/javascript">
        /* <![CDATA[ */
        var name = '#{cc.clientId}:#{cc.attrs.id}'.replace(/:/g,'\\\\:');
        jQuery('input[name=' + name + ']').click(function() {
            console.log("click");
        });
        /* ]]> */
</script>

代替&lt; CC:insertChildren /&GT;那将是随机数&lt; F:选择信息&GT;甚至&lt; F:selectItems的&GT;

1 个答案:

答案 0 :(得分:0)

尝试访问它们,如:

$('[id='+ID+']')

or

$('[id=ID]')