asp.net mvc アプリケーションがあります。ボタンがクリックされたとき(送信ボタン)、結果をいくつかのdiv内に表示したいと思います。私はそれを行う方法を知っています。部分ビューを返すアクションがあります。しかし、ボタンが送信されると、db から複数のオブジェクトを取得し、それらをすべて div に表示したいと考えています。
どうすれば達成できますか?
asp.net mvc アプリケーションがあります。ボタンがクリックされたとき(送信ボタン)、結果をいくつかのdiv内に表示したいと思います。私はそれを行う方法を知っています。部分ビューを返すアクションがあります。しかし、ボタンが送信されると、db から複数のオブジェクトを取得し、それらをすべて div に表示したいと考えています。
どうすれば達成できますか?
アクションメソッドは、それらをシリアル化してJSONエンコードされた文字列として返すことができます。
public ActionResult Foo()
{
SomeEntity[] entities = FetchEntities();
// The JsonRequestBehavior is necessary only in ASP.NET MVC 2.0
return Json(entities, JsonRequestBehavior.AllowGet);
}
これは次のように呼び出すことができます:
$.getJSON('/home/foo', function(json) {
$(json).each(function(index, value) {
// SomeProperty is a property of your entity:
$('body').append('<div>' + value.SomeProperty + '</div>');
});
});
これらすべてのオブジェクトをラッパーオブジェクトでラップし、そのオブジェクトを部分ビューに渡します。部分ビューをラッパーオブジェクトに強く入力すれば完了です。