MVC4 でシングル ページ アプリケーションを作成しています。ドロップダウンボックスがあります。そのドロップダウン ボックスを選択すると、JavaScript を呼び出して onchange イベントが発生します。
コントローラーを呼び出し、コントローラーにデータの JSON 結果を返すようにするには、JavaScript が必要です (データの取得方法は知っています)。このための基本的なフレームワークを作成するのを手伝ってくれる人はいますか?
MVC4 でシングル ページ アプリケーションを作成しています。ドロップダウンボックスがあります。そのドロップダウン ボックスを選択すると、JavaScript を呼び出して onchange イベントが発生します。
コントローラーを呼び出し、コントローラーにデータの JSON 結果を返すようにするには、JavaScript が必要です (データの取得方法は知っています)。このための基本的なフレームワークを作成するのを手伝ってくれる人はいますか?
onchange JavaScript イベントを select 要素に結び付けます
onchange のイベント関数で、select 要素からコントローラーに ajax で値を送信します。
コントローラー/アクション メソッドでは、値に基づいて作業を行い、json データを準備して (おそらくシリアル化しますか?)、それを返します。
ajax 呼び出しの成功部分で、返された json データを解析または使用します。
コントローラーコンストラクター内:
define('_IS_AJAX', isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest');
ビューをロードする前に、_IS_AJAX
変数を確認してください。
if(_IS_AJAX) {
//echo json_encode(data you want to return);
} else {
// load view normally
}
ビュー内(jQueryを使用)
$('#dropdownid').change(function() {
$.ajax({
url: requesturl, //your controller URL
dataType: 'json',
success: function(response) {
//Do stuff with data
}
},
error: function(request, error, errormessage) {
$("#error").html(error + '\n' + errormessage);
}
});
});