2012-04-05 8 views
-1
<p id="test"> Hello </p> 

XPageでSSJSを使用してHelloを取得するにはどうすればよいですか?SSJSのtextContentと同等の機能ですか?

+0

document.getElementById( "test")。textContentはHelloを返します。しかし、SSJSでは私は価値を得ることができません。 – Ramkumar

答えて

4

あなたは考えているようにすることはできません。 XPages、より具体的には、上記のHTMLコードを入力するXSPは、実際にはバックエンドで作成されたJavaコードのXML表現です。実際、Helloテキストは実際にはUIPassThroughText型のコンポーネントに変換されます。それを得るには、pタグを表すコンポーネントを取得し、次に子ノードを繰り返して、子ノードのタイプと内容をチェックし、必要なものが見つかるまで子ノードの内容をチェックする必要があります。しかし、これは本当にあなたがしたいことではありません。動的にノードの内部値を取得または設定するには、xp:textタグのようなものを使用し、そのタグでスコープ付き変数またはその他の形式の永続データ記憶域を参照して値を設定する必要があります。

3

SSJSは、XPagesコントロールと組み合わせて使用​​します。未使用のHTMLを出力し、XPagesコントロールを出力しない場合、可能な限り、これは非常に難しいと思います。

あなたが使用してのXPagesコントロールを照会することができますSSJSで

:私のようなのXPagesコントロールを使用しようとしていることをお勧め

getComponent(' <controlId> ').getValue(); 

getComponent(' <controlId> '); 

をしてて、その値を取得します

<xp:label></xp:label> or <xp:inputText></inputText> 

クライアント側でサーバ側を実行することの逆の意味は次のとおりです。

var clientVariable = #{javascript:sessionScope.variable} 
関連する問題