0

我正在使用 JSF 2.0 和 JQUERY 1.9。我正在尝试向组件添加属性,但是在呈现页面时,未添加该属性。

这是该组件的 jsf 代码。

  <h:form id="mainForm">
        <h:inputText id="field" value="#{bean.value}"/>
    </h:form>

jquery是这样的:

<script type="text/javascript">
// <![CDATA[
    window.onload=function(){
        $("#mainForm:field").attr("placeholder","Fill me");
    }
// <![CDATA[
</script>

这是这样呈现的:

<input id="mainForm:field" name="mainForm:field" type="text" value="">

关于我错在哪里的任何想法?谢谢!

4

2 回答 2

2

您应该在选择器中转义冒号

$("#mainForm\\:field").attr("placeholder","Fill me");
于 2013-09-09T15:02:38.807 回答
1

文档

要将任何元字符(例如 !"#$%&'()*+,./:;<=>?@[\]^{|}~)用作名称的文字部分,必须使用两个反斜杠对其进行转义:\\.

将您的选择器更改为$("#mainForm\\:field").

于 2013-09-09T15:02:49.887 回答