SAStruts + jQuery
Ajaxはあんまり使ったことがないので、勉強を兼ねて現在作成中のサンプルに組み込んでみようと思い、まずはチュートリアルの真似から始める。まずは単純なパターンから。
// Action @Execute(validator=false) public String hello() { ResponseUtil.write("こんにちは"); return null; }
<span id="message"></span><br> <input type="button" value="hello" onclick="$('#message').load('hello');"/>
これはsa-struts-tutorialそのままなので問題なし。
次にパラメータを受け取るパターン。
// Action /** Ajax用パラメータ */ public String greeting; @Execute(validator=false) public String hello() { ResponseUtil.write(greeting); return null; }
<span id="message"></span><br> <input type="button" value="hello" onclick="$('#message').load('hello',{'greeting':'Hello'});"/>
これも問題ないだろうと思いきや、画面に表示されたのは「null」の文字。ありゃ?これはパラメータが受け渡せてないってことだよなぁ。URLを使ってパラメータを渡す方法も試してみたけど同じく「null」だった。何が間違ってるのかよく分からん…。もっと基礎的なところから勉強しないとダメだな、これは。