1

Visualforce ページにカスタム コンポーネントがあり、次の属性が必要です。

<c:myCustomComponent id="myCC" attr='Some value'></c:myCustomComponent>

属性値をjavascriptから動的に変更したい。を試し getElementById('myCC').setAttribute('other value')ましたが、うまくいかないようで、DOM にはカスタム コンポーネント ID への参照がありません。

4

3 に答える 3

0

document .getElementById('myCC').setAttribute( 'value' , 'other value');を使用する必要があります。

また、属性「attr」は使用しないでください。

このjsfiddleを確認してください:

http://jsfiddle.net/wkJck/

于 2012-10-16T13:56:35.010 に答える
0

最初に値属性を定義する必要があります。次に、javascript でアクセスして変更できます。

例:

コンポーネント定義

    <apex:attribute name="myValue" description="This is the value for the component."  type="String" required="true"/>

visualforceによる値へのアクセス

<c:myComponent myValue="Some value" id="myCC"/>

JavaScriptによるアクセスと変更

document.getElementById('myCC').value ='other value' ;

公式ドキュメントで完全な例を読む

于 2012-10-16T14:05:15.827 に答える
0

生成された dom 要素の実際の id が異なるように見えるため、入力した id で直接 javascript を使用して visualforce 要素にアクセスすることはできません。私はそのために jquery を使用します。非常に簡単です。

<c:MyComponent id="myCC" />

<script>
    jQuery("[id$=myCC]").hide();
</script>
于 2012-10-16T17:58:28.223 に答える