Datatable converts the data into Json and puts the Json data into the js file.
5 code instances in C # converting Datatable to Json
////// Datatable to Json //////Datatable object///
Json string
Public static string ToJson (DataTable dt) {StringBuilder jsonString = new StringBuilder (); jsonString. append ("["); DataRowCollection drc = dt. rows; for (int I = 0; I <drc. count; I ++) {jsonString. append ("{"); for (int j = 0; j <dt. columns. count; j ++) {string strKey = dt. columns [j]. columnName; string strValue = drc [I] [j]. toString (); Type type = dt. columns [j]. dataType; jsonString. append ("\" "+ strKey +" \ ":"); strValue = StringFormat (strValue, type); if (j <dt. columns. count-1) {jsonString. append (strValue + ",");} else {jsonString. append (strValue) ;}} jsonString. append ("},");} jsonString. remove (jsonString. length-1, 1); jsonString. append ("]"); return jsonString. toString ();}////// Format String, date, and Boolean ////////////
Private static string StringFormat (string str, Type type) {if (type = typeof (string) {str = String2Json (str ); str = "\" "+ str +" \ "";} else if (type = typeof (DateTime )) {str = "\" "+ str +" \ "";} else if (type = typeof (bool) {str = str. toLower ();} else if (type! = Typeof (string) & string. IsNullOrEmpty (str) {str = "\" "+ str +" \ "" ;}return str ;}////// Filter special characters //////String///
Json string
Private static string String2Json (String s) {StringBuilder sb = new StringBuilder (); for (int I = 0; I <s. length; I ++) {char c = s. toCharArray () [I]; switch (c) {case '\ "': sb. append ("\" "); break; case '\': sb. append ("\\\\"); break; case '/': sb. append ("\/"); break; case '\ B': sb. append ("\ B"); break; case '\ F': sb. append ("\ f"); break; case '\ N': sb. append ("\ n"); break; case '\ R': sb. append ("\ r"); break; case '\ t': sb. append ("\ t"); break; default: sb. append (c); break;} return sb. toString ();}
<2>
// Query the province name var SQL = "select top 35 locid, locname, parentid from location where loctype = 1"; var dt_pro = SQLHelper. get_DataTable (SQL, SQLHelper. getCon (), new Dictionary
(); // Convert the dt_pro DataTable to json var tt_pro = ToJson (dt_pro); // query the city name var vsql = "select locid, locname, parentid from location where parentid in (select top 35 locId from location where loctype = 1) "; var dt_city = SQLHelper. get_DataTable (vsql, SQLHelper. getCon (), new Dictionary
(); // Convert the dt_city DataTable to json var tt_city = ToJson (dt_city );
<3> Create a js file and write two variables var cn_pro in the file. Assign the tt_pro value to cn_pro and the tt_city value to cn_city.
For example, enter var cn_pro = [{"locid": 1, "locname": "Beijing", "parentid": 0 },{ "locid": 673, "locname": "Shanghai", "parentid": 0}];
Var cn_city = [{"locid": 2, "locname": "Beijing", "parentid": 1 },{ "locid": 674, "locname ": "Shanghai", "parentid": 673}]
Of course, this is short for me. Most of the content is removed. The first two data entries are retained as an example.
========================================================== ======================================
<% @ Page Title = "\" Language = "C #" MasterPageFile = "~ /Views/Shared/MemberCenter. Master "Inherits =" System. Web. Mvc. ViewPage
"%> <% @ Import Namespace =" bigtree "%> <% using (Html. BeginForm () {%> Personal Data
-
Mobile phone:
<% ---- %> <%: Html. textBoxFor (x => x. mobile, new {@ class = "setterInput fl", @ readonly = ""}) %>)
-
Name:
<% ---- %> <%: Html. TextBoxFor (x => x. Name, new {@ class = "setterInput fl"}) %>
-
Email:
<% ---- %> <%: Html. textBoxFor (x => x. email, new {@ class = "setterInput fl"}) %> <% var I = Model. emailFlag; if (I = true) {%> verified <%}%> <% else {%> not verified <%}%>
-
Nickname:
<% ---- %> <%: Html. TextBoxFor (x => x. UserName, new {@ class = "setterInput fl"}) %>
-
Gender:
<% ---- %> <%: Html. RadioButtonFor (x => x. Sex, "male", new {@ name = "sex"}) %> male <% ---- %> <%: Html. RadioButtonFor (x => x. Sex, "female", new {@ name = "sex"}) %> female <% Var province = ViewData ["province"] as System. Data. DataTable; %>
-
Common cities:
Beijing
SaveBeijing
City
<% }%><Script type = "text/javascript"> $ (function () {$ (". navList>: contains ('profile ')"). addClass ("cur"); // set province var proList = ""; $. each (cn_pro, function (I, kv) {proList + ="
"+ Kv. locname +"";}); $ (" # ProList ").html (proList); $ (" # proList li "). bind ("click", function () {var li = $ (this); var cityList = ""; $. each (cn_city, function (I, kv) {if (kv. parentid = li. attr ("data-id") {cityList + ="
"+ Kv. locname +"";}}); $ (" # CityList ").html (cityList); $ (" # displyPro "). text (li. text (); $ ("# displyCity "). text ($ ("# cityList "). children (). first (). text (); $ ("# selectCityId "). val ($ ("# cityList "). children (). first (). attr ("data-id"); $ ("# selectCityName "). val ($ ("# cityList "). children (). first (). text (); $ ("# cityList li "). bind ("click", function () {$ ("# displyCity "). text ($ (this ). text (); $ ("# selectCityId "). val ($ (this ). attr ("data-id"); $ ("# selectCityName "). val ($ (this ). text () ;}) ;};}) </script> <script type = "text/javascript" src = ".. /.. /Scripts/Location. js "> </script>