jQuery の getJSON 関数を Play フレームワークで使用しようとしています。そして、クエリ文字列を渡しています。しかし、値を取得していないようで、キーのみを取得しています
これが私のjQuery関数です:-
<script type="text/javascript">
$(function() {
$("#button").click(function() {
$.getJSON(
'/getJsonResult',
{'foo':'bar'},
function(data) {
$.each(data, function(i, result) {
if(i != undefined) {
var result_html = '<ul><li>';
result_html += result + '<\/li><\/ul>';
$('#result_container').append(result_html);
}
});
}
);
});
});
</script>
アクションメソッドは次のとおりです。
public static Result getJsonResult() {
Map queryParameters = request().queryString();
List data = Arrays.asList("result", "This is just a test");
if (queryParameters != null) {
System.out.println("QS Key ---> " + queryParameters.containsKey("foo"));
System.out.println("QS Value ---> " + queryParameters.containsValue("bar"));
}
return ok(Json.toJson(data));
}
出力:-
[info] play - Application started (Dev)
QS Key ---> true
QS Value ---> false