天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

基于jQuery的ajax功能實(shí)現(xiàn)web service的json轉(zhuǎn)化

不過這篇文章的題目我真不知道該怎么起,如果你因?yàn)檫@個(gè)差勁的題目錯(cuò)過這個(gè)東西,那真的很可惜。

我在做這個(gè)東西之前參考了不少文章:

http://www.roseindia.NET/tutorials/json/parse-message-JSON-JS.shtml

http://www.json.org/js.html

http://funkatron.com/site/comments/safely-parsing-json-in-Javascript/

http://docs.jquery.com/Ajax/jQuery.getJSON

http://encosia.com/2009/06/29/never-worry-about-ASP-NET-ajaxs-d-again/

http://encosia.com/2009/04/07/using-complex-types-to-make-calling-services-less-complex/

http://www.isolutionteam.co.uk/json-jquery-ajax-ASPNET-and-c-to-get-ajaxed-data-table-rows-passing-multiple-parameters/

第一步需要做的是如何在Server端把一個(gè)datatable轉(zhuǎn)壞為自己需要的那種格式:

本來想使用.NETJavascriptSerializer來完成的(結(jié)合Genirics庫的List等),但是后來發(fā)現(xiàn)使用NewtonSoft.Json更加靈活,而且擴(kuò)展性比較好,甚至在網(wǎng)上有找到一些代碼能夠現(xiàn)成使用。

 

先看看我在Server端如何實(shí)現(xiàn)了Data轉(zhuǎn)化:

 

這里不僅能夠轉(zhuǎn)換Datatable還有DataSet,以后再擴(kuò)展JavascriptSerializer的轉(zhuǎn)換功能。需要注意的是轉(zhuǎn)化的最終結(jié)果需要是個(gè)[]包著的一段字符串.開始我試著使用{}來最終返回json為對(duì)象,結(jié)果在客戶端真的是沒有頭緒根本就無法轉(zhuǎn)換。最后看到一篇文章介紹,在.NET 3.5中你的web Services返回來的結(jié)果會(huì)自動(dòng)打包成一個(gè)json對(duì)象,且名字為d,如:{“d”:***}.所以我只有在服務(wù)器端的生成一個(gè)array形式的包。

然后我創(chuàng)建了一個(gè)數(shù)據(jù)庫表,內(nèi)容如下:

 

,

定義的web方法如下:

 

Serializer方法已經(jīng)在DNA_JSON中打包好。它是在NewtonSoft.Json的基礎(chǔ)轉(zhuǎn)換類基礎(chǔ)上擴(kuò)展的。

 

第二步是客戶端的東西:

首先我們需要用到幾個(gè)js, jQuery.js, json2.js就OK了。

 

上面圖所示我們用到了jQuery的ajax和JSON。Parse()轉(zhuǎn)換函數(shù)。

還有需要注意的是res.d它是.NET 3.5默認(rèn)為你打包好的json的屬性。如果你使用framework2.0就沒有這個(gè)問題了。

最后是看看如何把這些ojbect組成的array顯示在一個(gè)table中,代碼如下:

復(fù)制代碼 代碼如下:
<script type="text/Javascript"><!--
function BuildTable(msg) {
if ($('#tblResult').length != 0) // remove table if it exists
{$("#tblResult").remove();}
var table = '<table class="table.display"><thead> <tr><th>First Name</th> <th>Last Name</th><th>Email</th></thead> <tbody>';
for (var i=0;i<=msg.length-1;i++) {
var row = '<tr>';
row += '<td>' + msg[i].UserName+ '</td>';
row += '<td>' +msg[i].FirstName+ '</td>';
row += '<td>' + msg[i].email + '</td>';
row += '</tr>';
table += row;
}
table += '</tbody></table>';
$('#example1').html(table);
}
// --></script>

如果還有需要源代碼的請(qǐng)留言。接下來我會(huì)試著去使用這個(gè)方法把一些jQuery的ajax插件介紹給大家,然后把一些datagrid的插件封裝成ASP.NET控件,這樣你就不需要使用微軟那笨重的datagrid了。

JavaScript技術(shù)基于jQuery的ajax功能實(shí)現(xiàn)web service的json轉(zhuǎn)化,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人在线观看网站 | 99久久免费国产精精品 | 囯产精品久久久久久久久蜜桃 | porono日本xxx| 国产亚洲色婷婷久久精品99 | 亚洲第一色网站 | 成人毛片在线播放 | 动漫美女无衣 | 女人久久WWW免费人成看片 | 国产一区二区三区国产精品 | 俄罗斯大白屁股 | 午夜看片福利在线观看 | 翘臀后进美女白嫩屁股视频 | 亚洲看片网站 | 亚洲 欧美 中文 日韩 另类 | 99久久99久久久99精品齐 | 无码乱人伦一区二区亚洲 | 日本高清色片 | 成人在线视频播放 | 正在播放国产精品 | 无限资源在线观看8 | 高清撒尿hdtube撒尿 | 亚洲伊人久久精品 | 欧美性猛交xxxxxxxx软件 | www.伊人| 国产一在线精品一区在线观看 | 国产色精品久久人妻无码 | ABO成结顶腔锁住 | 青娱乐视觉盛宴国产视频 | 经典WC女厕所里TV | 免费一区在线观看 | 欧美午夜不卡在线观看 | 苍井空a 集在线观看网站 | 无码国产欧美日韩精品 | 麻豆精品乱码WWW久久密 | 免费一级毛片在线观看 | 夜夜女人国产香蕉久久精品 | 亚洲国产成人精品无码区99 | 强奷漂亮女老板在线播放 | 尿了么app | 欧美亚洲另类图片 |