自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解析Jquery Json Php代碼相關(guān)使用問題

開發(fā) 開發(fā)工具
這里考慮都考慮的是服務(wù)器返回的是JSON形式的字符串的形式,對(duì)于利用JSONObject等插件封裝的JSON對(duì)象,與此亦是大同小異,這里不再做說明,下面進(jìn)行Jquery Json Php代碼說明

下面文章總結(jié)一下Jquery Json Php代碼非常好用,只要返回json數(shù)據(jù)就可以了,如果對(duì)json數(shù)據(jù)不太了解請(qǐng)先百度或者google一下 。下面是一個(gè)我的工作實(shí)例;希望大家能夠?qū)W習(xí)參考。

jQuery擴(kuò)展ajaxName,用于ajax提交方法的頁(yè)面數(shù)據(jù)獲取,根據(jù)頁(yè)面元素的name生成相應(yīng)的js對(duì)象,然后可以把這個(gè)對(duì)象傳給Jquery Json Php代碼庫(kù)進(jìn)行編碼向后臺(tái)提交,支持?jǐn)?shù)組,支持.表達(dá)式,#t#

下面就對(duì)Jquery Json Php代碼介紹:

  1. /*    
  2.  * jQuery Ajax By Name Plugin    
  3.  *    
  4.  * licensed under the MIT licenses:    
  5.  *   http://www.opensource.org/licenses/mit-license.php    
  6.  *    
  7.  * Author achun (achun.shx at gmail.com)    
  8.  * Create Date: 2008-6-21    
  9.  * Last Date: 2008-6-21    
  10.  * Revision:2.8.6.21    
  11.  */    
  12. (function($) {     
  13. /**    
  14.  * 獲取鼠標(biāo)點(diǎn)擊的元素坐標(biāo)    
  15.  */      
  16. $.fn.clickPos = function(e){     
  17.   var pos ={x:0,y:0};     
  18.   if (e.offsetX != undefined) {     
  19.     pos.x = e.offsetX;     
  20.     pos.y = e.offsetY;     
  21.   } else if (typeof $.fn.offset == 'function') {     
  22.     var offset = this.offset();     
  23.     pos.x = e.pageX - offset.left;     
  24.     pos.y = e.pageY - offset.top;     
  25.   } else {     
  26.     pos.x = e.pageX - this[0].offsetLeft;     
  27.     pos.y = e.pageY - this[0].offsetTop;     
  28.   }      
  29.   return pos;     
  30. }     
  31. /**    
  32.  * ajaxName() 根據(jù)標(biāo)簽name屬性來提交數(shù)據(jù),替代form提交方式    
  33.  * options:{//與ajax的options是一樣的結(jié)構(gòu)    
  34.  *  data:{}//要附加提交的數(shù)據(jù)    
  35.  * }    
  36.  * successful:如果元素有有效值,defualt:true    
  37.  */    
  38. $.fn.ajaxName = function(options,successful) {     
  39.     if(options==undefined) options={};     
  40.     optionsoptions.data = options.data || {};     
  41.   successfulsuccessful = successful == undefined ? true:successful;     
  42.     var data = {};     
  43.     var nameoptions.name || '';     
  44.     this.each(function() {     
  45.     var el=this,o=$(this),n = o.attr('name'),hasval = o.attr('value')!=undefined;     
  46.     if (!n) return;     
  47.     var t = el.type, tag = el.tagName.toLowerCase();     
  48.         if (n=='/'){     
  49.             if (name=='') name = hasval?o.attr('value'):o.text();     
  50.             return;     
  51.         }     
  52.     if (successful && (el.disabled || t == 'reset' || t == 'button' ||     
  53.           (t == 'checkbox' || t == 'radio') && !el.checked ||     
  54.           (t == 'submit' || t == 'image') ||     
  55.           tag == 'select' && el.selectedIndex == -1))     
  56.       return;     
  57.     var vhasval? o.attr('value') :o.hasClass('ValueByText')?o.text():o.html();     
  58.     if (v == undefined) return;     
  59.     if (n.indexOf('.')>0){     
  60.         nn=n.split('.');     
  61.         var len=n.length - 1;     
  62.         var b=data;     
  63.       $.each(n,function(i){     
  64.             if (i!=len){     
  65.                 if(b[this] == undefined) b[this]={};     
  66.             bb=b[this];     
  67.             }else    
  68.             b[this]=v;     
  69.         });     
  70.     }else if (n.indexOf('[]')>0){     
  71.         nn=n.slice(0,n.length-2);     
  72.         if(data[n] == undefined) data[n]=[];     
  73.         data[n].push(v);     
  74.         }else{     
  75.             data[n]=v;     
  76.         }     
  77.   });     
  78.   var dat={};     
  79.   if (name){     
  80.     dat[name]=data;     
  81.       datdata=dat[name];     
  82.   }else    
  83.     dat=data;     
  84.   for (var o in options.data){     
  85.     data[o]=options.data[o];     
  86.   };     
  87.   options.data=dat;     
  88.   return options.data;     
  89. };     
  90. })(jQuery);    
  91.  
  92. /*  
  93.  * jQuery Ajax By Name Plugin  
  94.  *  
  95.  * licensed under the MIT licenses:  
  96.  *   http://www.opensource.org/licenses/mit-license.php  
  97.  *  
  98.  * Author achun (achun.shx at gmail.com)  
  99.  * Create Date: 2008-6-21  
  100.  * Last Date: 2008-6-21  
  101.  * Revision:2.8.6.21  
  102.  */  
  103. (function($) {  
  104. /**  
  105.  * 獲取鼠標(biāo)點(diǎn)擊的元素坐標(biāo)  
  106.  */   
  107. $.fn.clickPos = function(e){  
  108.   var pos ={x:0,y:0};  
  109.   if (e.offsetX != undefined) {  
  110.     pos.x = e.offsetX;  
  111.     pos.y = e.offsetY;  
  112.   } else if (typeof $.fn.offset == 'function') {  
  113.     var offset = this.offset();  
  114.     pos.x = e.pageX - offset.left;  
  115.     pos.y = e.pageY - offset.top;  
  116.   } else {  
  117.     pos.x = e.pageX - this[0].offsetLeft;  
  118.     pos.y = e.pageY - this[0].offsetTop;  
  119.   }   
  120.   return pos;  
  121. }  
  122. /**  
  123.  * ajaxName() 根據(jù)標(biāo)簽name屬性來提交數(shù)據(jù),替代form提交方式  
  124.  * options:{//與ajax的options是一樣的結(jié)構(gòu)  
  125.  *  data:{}//要附加提交的數(shù)據(jù)  
  126.  * }  
  127.  * successful:如果元素有有效值,defualt:true  
  128.  */  
  129. $.fn.ajaxName = function(options,successful) {  
  130.     if(options==undefined) options={};  
  131.     optionsoptions.data = options.data || {};  
  132.   successfulsuccessful = successful == undefined ? true:successful;  
  133.     var data = {};  
  134.     var nameoptions.name || '';  
  135.     this.each(function() {  
  136.     var el=this,o=$(this),n = o.attr('name'),hasval = o.attr('value')!=undefined;  
  137.     if (!n) return;  
  138.     var t = el.type, tag = el.tagName.toLowerCase();  
  139.         if (n=='/'){  
  140.             if (name=='') name = hasval?o.attr('value'):o.text();  
  141.             return;  
  142.         }  
  143.     if (successful && (el.disabled || t == 'reset' || t == 'button' ||  
  144.           (t == 'checkbox' || t == 'radio') && !el.checked ||  
  145.           (t == 'submit' || t == 'image') ||  
  146.           tag == 'select' && el.selectedIndex == -1))  
  147.       return;  
  148.     var vhasval? o.attr('value') :o.hasClass('ValueByText')?o.text():o.html();  
  149.     if (v == undefined) return;  
  150.     if (n.indexOf('.')>0){  
  151.         nn=n.split('.');  
  152.         var len=n.length - 1;  
  153.         var b=data;  
  154.       $.each(n,function(i){  
  155.             if (i!=len){  
  156.                 if(b[this] == undefined) b[this]={};  
  157.             bb=b[this];  
  158.             }else  
  159.             b[this]=v;  
  160.         });  
  161.     }else if (n.indexOf('[]')>0){  
  162.         nn=n.slice(0,n.length-2);  
  163.         if(data[n] == undefined) data[n]=[];  
  164.         data[n].push(v);  
  165.         }else{  
  166.             data[n]=v;  
  167.         }  
  168.   });  
  169.   var dat={};  
  170.   if (name){  
  171.     dat[name]=data;  
  172.       datdata=dat[name];  
  173.   }else  
  174.     dat=data;  
  175.   for (var o in options.data){  
  176.     data[o]=options.data[o];  
  177.   };  
  178.   options.data=dat;  
  179.   return options.data;  
  180. };  
  181. })(jQuery); 
責(zé)任編輯:chenqingxiang 來源: 計(jì)世網(wǎng)
相關(guān)推薦

2011-07-19 09:08:38

jQuery

2010-01-06 16:41:40

解析JSON

2016-09-18 17:24:58

php函數(shù)json_encodeunicode

2009-08-03 17:22:15

JSON解析

2011-05-25 15:34:17

jQueryJSON

2010-01-08 14:06:49

JSON 形式

2011-03-04 14:58:40

jqueryJSON

2010-07-06 10:07:10

jQueryJSON

2009-12-01 18:47:19

PHP代碼轉(zhuǎn)義

2010-01-06 10:18:02

JSON類

2009-11-23 10:31:25

PHP使用JSON

2012-05-23 13:11:10

架構(gòu)存儲(chǔ)

2009-12-10 16:40:04

PHP處理分頁(yè)

2010-01-05 16:26:33

Javascript

2010-03-30 13:49:15

Oracle clob

2009-12-08 14:20:30

PHP CLI腳本

2009-12-07 15:41:51

PHP圖片加水印

2010-02-06 09:06:58

Android SDK

2010-01-25 18:22:33

Android使用XM

2009-12-03 16:30:24

PHP代碼解析損耗
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)