>  기사  >  웹 프론트엔드  >  data_jquery의 보조 연결을 달성하는 jquery json 메서드

data_jquery의 보조 연결을 달성하는 jquery json 메서드

WBOY
WBOY원래의
2016-05-16 15:29:131478검색

이 기사의 예에서는 데이터의 2차 연결을 달성하기 위한 jquery json 방법을 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

function GetCityInfo1() 
{ 
  $("#ddlCITY1").empty(); 
  //$("#ddlCOUNTY").empty(); 
  var strId = $("#ddlPROVINCE1").attr("value"); 
  $('#HiddenPro').val(strId); 
  $.get("../ashx/GetCityInfo.ashx",{ProID:strId,date:new Date().getTime(),proType:"getCity"},function(result) 
  { 
   $("#ddlCITY1").append($("<option></option>").val("0").html("--请选择城市--")); 
   var datas=eval(result); 
   for(var j in datas) 
   { 
    $("#ddlCITY1").append($("<option></option>").val(datas[j].ccode).html(datas[j].cityname)); 
   } 
    //获取区的信息
    //GetCountryInfo();
   }); 
}

백엔드 코드:

if (context.Request.QueryString["ProID"] != null && context.Request.QueryString["proType"] != null) 
{ 
  string pcode = Convert.ToString(context.Request.QueryString.GetValues("ProID")[0]); 
  string strSQL = "select cityname,ccode from CD_CityInfo where pcode='" + pcode + "' "; 
  //执行T-SQL语句 返回DataTable 
  DataTable dt = Snell.SnCode.DataBase.SQLServerHelper.Query(strSQL).Tables[0]; 
  StringBuilder sb = new StringBuilder(); 
  sb.Append(CreateJsonParameters(dt)); 
  //根据省份编号获取信息 获取信息 
  if (sb.Length > 0) 
  { 
   context.Response.ClearContent(); 
   context.Response.ContentEncoding = System.Text.Encoding.UTF8; 
   context.Response.Write(sb.ToString()); 
   context.Response.End(); 
  } 
}
#region 根据Datatable的数据结构转换成json数据 
public string CreateJsonParameters(DataTable dt) 
{ 
 System.Text.StringBuilder sb = new System.Text.StringBuilder(); 
 if (dt != null && dt.Rows.Count > 0) 
 { 
  sb.Append("["); 
  for (int i = 0; i < dt.Rows.Count; i++) 
  { 
   sb.Append("{"); 
   for (int j = 0; j < dt.Columns.Count; j++) 
   { 
    //如果值不是最后一个则添加逗号分隔
    if (j < dt.Columns.Count - 1) 
    { 
     sb.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[i][j].ToString() + "\","); 
    } 
    //如果值为最后个字符则不添加逗号
    else if (j == dt.Columns.Count - 1) 
    { 
     sb.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[i][j].ToString() + "\""); 
    } 
   } 
   //如果为最后一个值的话 则不添加逗号
   if (i == dt.Rows.Count - 1) 
   { 
    sb.Append("}"); 
   } 
   else 
   { 
    sb.Append("},"); 
   } 
  } 
  sb.Append("]"); 
  return sb.ToString(); 
 } 
 else { return null; } 
} 
#endregion

이 기사가 jQuery 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.