前台js 代碼
//或的 模塊下拉框
$("#CTRL").change(function () {
//得到 下拉框中選中的值
$.ajax({
url: '../LogSelect/AjaxData?CTRL=' + $("#CTRL").val(),
type: 'get',
contentType: 'application/json;charset=utf-8',
success: function (json) {
//或的 json 數據 綁定 功能下拉框
var optionString = "";
for (var i = 0; i < json.length; i++) {
optionString += json[i].toString();
}
$("#OPRT").html(optionString);
},
error: function () {
alert("出錯了");
}
})
})
提交到 后台的 Action 控制器 方法中
url: '../LogSelect/AjaxData?CTRL=' + $("#CTRL").val(),
Mvc中為我們提供了 一個Action JsonResult
Public JsonResult AjaxData()
{
return this.Json(集合, JsonRequestBehavior.AllowGet);
}
JsonRequestBehavior.AllowGet 枚舉 表示 允許來自客戶端的Get請求s
得到 一個json 數據 可能是Mvc中給我們封裝啦
using System.Web.Script.Serialization;
下的 JavaScriptSerialization 類
后天控制器 代碼
public JsonResult AjaxData( )
{
string ctrlName = "";
//接收 模塊名
if (Request.QueryString["CTRL"] != null)
{
ctrlName = Request.QueryString["CTRL"].ToString();
}
SearchModel serchModel = new SearchModel();
if (Session["serchModel"] != null)
{
serchModel = Session["serchModel"] as SearchModel;
}
// 得到 OPER 功能的字典
//OPERATECODE
Dictionary<string, string> dicOPER = new Dictionary<string, string>();
dicOPER = logBll.GetDicOPRT(ctrlName);
List<string> optionOprt= GetOperOption(dicOPER, serchModel);
return this.Json(optionOprt, JsonRequestBehavior.AllowGet);
}