私はプレイ フレームワークが初めてで、ajax の実装について質問があります。だから私は検索ページを実装しました - その上に日付範囲を送り返すフォームがあります。そして、それはすべて機能しています。しかし、私はそれを ajax で動作させたかったので、いくつか質問があります。コントローラーで新しいフォーム タイプを作成する必要がありますか? 私が以前にやったように?または、手動でデータを取得できますか?
したがって、現在私のhtmlには次のフォームがあります。
<form action="@routes.History.search()" class="pull-right" id="formHistory">
MinDate: <input id="mindate" name="mindate" class="input-small" type="text">
MaxDate: <input id="maxdate" name="maxdate" class="input-small" type="text">
<button class="btn" type="submit">Search</button>
</form>
ここに私のjavascriptがあります:
$('#formHistory').submit( function(evt) {
$('#errors').show();
$.ajax({
type: 'POST',
url: jQuery("#formHistory").attr("action"),
data: jQuery("#formHistory").serialize(),
dataType: "json",
success: function(data) {
alert('History Search');
$("tableHistory").find("tr:gt(0)").remove();
alert(data.id[0].source);
},
error: function(data) {
$('#errors').shows();
alert('History search failed');
}
});
return false;
});
私の history.java ファイルでは、json 情報を取得する必要があります。以前は、これを使用してこれを行いました
Form<Login> loginForm = form(Login.class).bindFromRequest();
しかし、最小日付と最大日付のオブジェクトがありません。JSON 情報を手動で取得できますか?
public static Result search() {
//So here I would like to get the form information
}
次の質問は、これを逆に行う方法です。最小日付と最大日付を取得したら、データベースから情報を取得したら、応答を返す必要があります。データのリストを含む json 応答を返す必要がありますか?これを javascript で処理するにはどうすればよいですか? または、サーバー上で html を作成し、これを文字列として送信し、適切な要素に追加しますか? または、いくつかのデモで見た他のオプションは、ビューを作成してそれを戻し、小さいビューをレンダリングすることです