2012-04-25 12 views
1

ポップアップ・ページの値をRTFフィールドに戻すためのボタンを追加しました。しかし、私の現在の要件は、単純なテキストフィールドに値を追加することです。誰も私に簡単なテキストフィールドに値を返すことができます方法をお勧めしますか?リボンツールバーボタンの値を単純なテキストフィールドに戻すことはできますか?

+1

これをRTFフィールドで行うコード例を示してください。これは、あなたが何をしようとしているのか理解するのに役立ちます。 –

+0

使用しているSDL Tridionのバージョンも指定してください。あなたはこれをTridion 2009とタグ付けしました - しかし、質問は2011年に関連しているようです。 –

答えて

4

現時点では、ビューからフィールドビルダーコントロールにアクセスするAPIがないため、サポートされている方法では実行できません。 これを回避する(プライベートプロパティやその他のハッキングにアクセスする)場合は、Field BuilderコントロールAPIを使用してこれを実現できます。たとえば、次のように

var field = fieldBuilder.getFocusField(); // returns currently focused field object 
field.getValues(); // returns field values (might be more than 1 in case of multivalue fields 
field.setValues([...]); // sets field values 

しかし、リボンツールバーボタンのフォーカスをクリックして、リボンツールバーボタンにフィールドから移動されますことを、注意してください。したがってfieldBuilder.getFocusField()nullを返します。 フィールドビルダーコントロールの"focusmove"イベントをリスニングして、フォーカスされたフィールドを追跡するソリューションの1つです。

+0

あなたのお返事ありがとうございます。パブリケーションIDを取得するには、コマンド "$ display.getView()。getItem()。getPublicationId()"を使用します。 同様に、getFocusField()については、どのオブジェクトを使用する必要がありますか? 現在のフィールドのフォーカスを取得する方法について詳しく説明してください。前もって感謝します。 –

+0

私のコンポーネント作成ページには、複数値の埋め込みスキーマフィールドがあります。コンポーネントの完全なXMLにアクセスするには、コマンド "$ display.getView()。getItemFields()"を使用しています。特定のRTFフィールドについて、私は "target.editor.getHTML()"というコマンドを使用しています。しかし、私の要件は、埋め込みフィールド値の完全なセットを取得することです。私はどのコマンドを使用する必要がありますか?この問題で助けてください。前もって感謝します。 –

+0

すでに述べたように、filedBuliderインスタンスオブジェクトを使用して、getFocusFieldメソッドを呼び出す必要があります。そのオブジェクトにアクセスするための公開APIはありません。しかし、「プライベート」オブジェクトにアクセスするためのサポートされていない方法と文書化されていない方法を使用することができます。 $ display.getView()。properties.controls.fieldBuilder.getFocusField() –

関連する問題