5

フォームに送信ボタンを作成すると、HTMLで次のように生成されます

XSP.attachEvent("view:_id1:_id2:_id38:_id55", 
    "view:_id1:_id2:_id38:button1", "onclick", null, true, 2);
});

"view:_id1:_id2:_id38:_id55"=eventHandlerのclientId

"view:_id1:_id2:_id38:button1" =ボタンのclientID(まったく混乱しません)

ポータブルコマンドガイドが大好きなのと同じように、プログラムでeventHandlerclientIdを取得する方法を判断できません。

$$xspsubmitidフィールド値を使用してajax経由でフォームを送信するにはclientIDが必要です

これは顔を通して行うことができますか?とSSJS?

4

2 に答える 2

7

あなたがやりたいことを深く読んで、私がいつか書いたこの記事を見ると、何が起こっているのかをより深く理解することができると思います。取得しようとしているID、targetClientIdではなくclientIdは、イベントハンドラーのIDであり、たとえば次のようにIDを割り当てることで取得できます。

<xp:eventHandler id="foo">

これにより、ランタイムは自動生成されたIDではなく指定されたIDを使用するようになり、ハンドルを取得できるようになります。

于 2012-04-13T20:19:54.340 に答える
5
getComponent("button1").getClientId(facesContext)
于 2012-04-13T19:48:35.517 に答える