无法读取JSF组件上的ID

问题描述:

我有一点问题 我想在JSF textarea组件上使用MartkItUp JQuery富文本编辑器。 我的形式如下:无法读取JSF组件上的ID

<h:form id="comment"> 
    <h:inputTextarea id="commentBody" cols="10" rows="10" value="#{postComment.commentBody}" required="true" requiredMessage="Comment Body is reqguired" > 
     <f:validateLength maximum="500" minimum="2" /> 
    </h:inputTextarea> 
       <%-- more of the form... %--> 

的问题是,在输出它给我的ID为textarea的那样

id="comment:commentBody" 

当我尝试在JQuery中指向它什么也没有发生。

$('#comment:commentBody').markItUp(mySettings); 

我之前有一个纯文本区域,没有问题。现在,我有很多。

如何指向ID在JQuery的,这就是看起来像评论:commentBody

P.S:我知道我可以指向由$此文本区( '文本区域')markItUp(mySettings)。但是我正在寻找解决方案,通过它的ID指向特定的文本区域。

试试这个,$('#comment\\:commentBody'),jQuery的版本1.1.3或更高。

+0

它运作良好。谢谢 – Dmitris 2009-06-10 03:55:59

试试这个:

$("textarea[id$='commentBody']").markItUp(mySettings); 

这将选择具有ID 文本区域结束commentBody

选择与ID与特定的字符串开始控制取代$^

+0

尝试使用您的方法时出现错误。 但无论如何,谢谢你试图帮助 – Dmitris 2009-06-10 03:56:52

你可以阅读关于JSF的ID here,但在这种情况下,你可能还会发现H:形式prependId属性很有用。

+0

示范工作。 +1 – 2009-06-11 01:58:53