2013-01-02 36 views
-3

我正在使用MVC4中的單頁應用程序。我有一個下拉框。當我選擇該下拉框時,onchange事件將觸發調用一些JavaScript。從MVC視圖通過Javascript調用控制器並返回Json結果

我需要JavaScript來調用控制器,並讓控制器返回一些數據的JSON結果(我知道如何獲取數據)。任何人都可以幫我找到一個基本的框架?

回答

1

線了的onchange JavaScript事件到您選擇的元素

在對的onchange事件功能,AJAX已經從選擇元素髮送值到控制器。

在控制器/操作方法中,根據值做你的工作,然後準備json數據(也許是序列化?)然後返回它。

在ajax調用的成功部分,解析或以其他方式使用返回的json數據。

0
在你的控制器構造

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); 
     } 
    }); 
}); 
相關問題