cs
DataTable dtProLeve = codeDs.GetBasicQuery(Convert.ToInt32(pIndex), strParam1, strParam2, ""); ; //获取营销单位
string strJson = "";
strJson = DataTableToJson(dtProLeve);
context.Response.Flush();
context.Response.End();
/// <summary>
/// 将一个数据表转换成一个JSON字符串,在客户端可以直接转换成二维数组。
/// </summary>
/// <param name="source">需要转换的表。</param>
/// <returns></returns>
public string DataTableToJson(DataTable source)
{
if (source.Rows.Count == 0)
return "";
StringBuilder json = new StringBuilder("[");
foreach (DataRow row in source.Rows)
{
json.Append("[");
for (int i = 0; i < source.Columns.Count; i++)
{
json.Append('"' + row[i].ToString() + "\",");
}
json.Remove(json.Length - 1, 1);
json.Append("],");
}
json.Remove(json.Length - 1, 1);
json.Append("]");
return json.ToString();
}
aspx
//json字符串转化为json数组
function JsonToArray(json)
{ eval('var s='+json+';');
return s;
}
//加载数据信息
function loadDataForDll(curp,p1,p2,Sid)
{
$.ajax({
url:"getkpi504.ashx",
type:"post",
contentType:"application/x-www-form-urlencoded",
data:{Index:curp,Param1:p1,Param2:p2},
error:function(){
alert("加载失败,系统异常。。。");
},
success:function(data){
if(data!="no"){
var arr=JsonToArray(data);
$.each(arr, function(i)
{
if(curp==50105) //国际国内
{
document.getElementById(Sid).options.add(new Option(arr[i][0],arr[i][1]));
}
else if(curp==50103) //事业部
{
document.getElementById(Sid).options.add(new Option(arr[i][0],arr[i][1]));
}
else if(curp==50104) //片区
{
document.getElementById(Sid).options.add(new Option(arr[i][0],arr[i][1]));
}
else if(curp==50106) //销售处
{
document.getElementById(Sid).options.add(new Option(arr[i][0],arr[i][1]));
}
});
}
}
});
}
|