+ Start a Discussion
nishida syouheinishida syouhei 

visualforceコンポーネント内でのapex:commandLink,apex:commandButtonタグでpageコントローラのメソッドが呼べない

お世話になります。

visualforceのコンポーネントから

apex:commandLink,apex:commandButtonを使用して、ページのコントローラのメソッドを呼ぶとこは出来ますでしょうか?

当方で試した場合、
j_id9:j_id54:1:j_id56 ... 
などのDOMのパス? が変わってしまい、上手く動作しないようでした。

どなたかご教示お願い致します。
Best Answer chosen by nishida syouhei
Marty C.Marty C.
西田さん、こんにちは。お返信が遅くなってすみません。

ちょっと複雑だが、ページコントローラメソッドを呼ぶ方法があります。自分の発現[1]じゃないけど、日本語に[2]翻訳してみました。西田さんの場合で便利になれるかもしれません。

[1]: 発現 (https://developer.salesforce.com/page/Controller_Component_Communication)
[2]: 翻訳 (http://carvingintheclouds.blogspot.com/2014/06/blog-post.html)

All Answers

Taiki YoshikawaTaiki Yoshikawa
こんにちは。

jsやreRender等IDを指定する必要が無ければDOMのIDは関係ないと思うのでできないのだと思います。

コンポーネントはどのページでも使えるように特定のページのクラス処理を実行するのは避けた方がいいと思います。コンポーネントに対してもコントローラを作れるのでそちらで処理を実装するのはどうでしょうか。
Marty C.Marty C.
西田さん、こんにちは。お返信が遅くなってすみません。

ちょっと複雑だが、ページコントローラメソッドを呼ぶ方法があります。自分の発現[1]じゃないけど、日本語に[2]翻訳してみました。西田さんの場合で便利になれるかもしれません。

[1]: 発現 (https://developer.salesforce.com/page/Controller_Component_Communication)
[2]: 翻訳 (http://carvingintheclouds.blogspot.com/2014/06/blog-post.html)
This was selected as the best answer