私はこのようなコントローラのコードを持っている:GrailsコントローラでHTML/JavaScriptをレンダリングする方法は?
def test23() {
//params.id23 is been passed via ajax calls
def find = User.findByUsernameLike("${params.id23}")
println find
render """<script type="text/javascript"> alert("hi"); </script>"""
}
このコードはjQueryのajax
メソッドを使用して呼ばれています。さて、それはうまく動作します。つまり、出力がコンソールに表示されますが、render
の部分が機能していません(私はalert
を取得していません)。
私が行ったことは正しいですか?スクリプトをレンダリングするために何か他のものを渡す必要がありますか?
*身震い* ...ビューコード - より有用コメントとして、あなたが本当に考慮すべきである:
または可能性をコントローラーでこれを行わず、ビューに移動させます。そこで、AJAXは値を要求し、 'hi'を含むJsonオブジェクトを受け取り、 'alert'か何かを呼び出します。またはJavaScriptのテンプレートフレームワークを見て...それは本当にあなたが達成しようとしているかどうかに依存します... –
@tim_yates:私はちょうどそれが動作しているかどうか知りたいですが、私のコードに入れません。しかしレンダリングは私に警報を表示する必要がありますが、それはここで尋ねられる理由ではありません:) –
@tim_yates:そのアドバイスありがとう。ユーザーがドロップダウンリストボックスから値を選択した後に、DOMにいくつかのデータを追加する必要があります(つまり、ユーザーがそれを見ることができるように、いくつかの 'id'要素に)。) –