1//ææºæ§å¶ 2String.prototype.contains = function (value) { 3 if (!value) 4 return false; 5 return this.toLowerCase().indexOf(value.toLowerCase()) !== -1; 6}; 7var website = (function () { 8 return { 9 isObject: function (value) { 10 /// <summary> 11 /// 夿æ¯å¦å¯¹è±¡ç±»å 12 /// </summary> 13 return typeof value === "object"; 14 }, 15 joinUrl: function (url, param) { 16 /// <summary> 17 /// è¿æ¥urlä¸åæ° 18 /// </summary> 19 /// <param name="url" type="String"> 20 /// Url 21 /// </param> 22 /// <param name="param" type="String"> 23 /// åæ° 24 /// </param> 25 /// <returns type="String" /> 26 if (!param) 27 return url; 28 if (url.contains("?")) 29 return url + "&" + getParams(); 30 return url + "?" + getParams(); 31 32 //è·ååæ°å表 33 function getParams() { 34 if (website.isObject(param)) 35 return $.param(param); 36 return param; 37 } 38 }, 39 getNoCacheUrl: function (url, param) { 40 /// <summary> 41 /// è·åä¸ç¼åçurl 42 /// </summary> 43 /// <param name="url" type="String"> 44 /// Url 45 /// </param> 46 /// <param name="param" type="String"> 47 /// åæ° 48 /// </param> 49 /// <returns type="String" /> 50 url = website.joinUrl(url, param); 51 return website.joinUrl(url, "randomnumber=" + Math.random()); 52 }, 53 ajax: function (options) { 54 /// <summary> 55 /// æäº¤ajaxè¯·æ± 56 /// </summary> 57 /// <param name="options" type="Object"> 58 /// jQuery ajaxåæ°ï¼èä¾ï¼{url:"/a/b",type:"GET"},常ç¨åæ°ï¼ 59 /// 1. type,è¯·æ±æ¹å¼ï¼é»è®¤ä¸ºPostï¼å¯éå¼:"GET","POST"; 60 /// 2. dataType,æå¡å¨è¿åçæ°æ®ç±»åï¼é»è®¤ä¸ºjson,å¯éå¼:"json","text","html","xml","script","jsonp"; 61 /// 3. url,æå¡ç«¯å°å; 62 /// 4. data: åéåæ°,æ ¼å¼å¯ä»¥æ¯åæ°å符串,æ¯å¦"a=1&b=2"ï¼ä¹å¯ä»¥æ¯js对象,æ¯å¦{a:1,b:2}; 63 /// 5. async: æ¯å¦å¼æ¥ï¼é»è®¤ä¸ºtrue; 64 /// 6. success: æååè°å½æ°; 65 /// </param> 66 options = options || {}; 67 var fnSuccess = options.success; 68 var fnError = options.error; 69 options = $.extend({ 70 type: 'POST', 71 dataType: "json" 72 }, options, { 73 success: function (result) { 74 if (fnSuccess) 75 fnSuccess(result); 76 }, 77 error: function (result) { 78 if (fnError) { 79 fnError(result); 80 return; 81 } 82 website.ajaxError(result); 83 } 84 }); 85 $.ajax(options); 86 }, 87 getById: function (id) { 88 /// <summary> 89 /// éè¿Idè·åjQuery对象 90 /// </summary> 91 /// <param name="id" type="String"> 92 /// å ç´ idï¼å¦æä¼ å ¥å¯¹è±¡ï¼åç´æ¥è¿å 93 /// </param> 94 return website.isObject(id) ? id : $("#" + id); 95 }, 96 load: function (elementId, url, data, fnLoad) { 97 /// <summary> 98 /// 仿å¡ç«¯å è½½htmlå°æå®å ç´ 99 /// </summary> 100 /// <param name="elementId" type="String"> 101 /// å ç´ Idï¼ä¹å¯ä»¥æ¯jQuery对象 102 /// </param> 103 /// <param name="url" type="String"> 104 /// æå¡ç«¯å°å 105 /// </param> 106 /// <param name="data" type="String"> 107 /// åéåæ°,æ ¼å¼å¯ä»¥æ¯åæ°å符串,æ¯å¦"a=1&b=2"ï¼ä¹å¯ä»¥æ¯js对象,æ¯å¦{a:1,b:2} 108 /// </param> 109 /// <param name="fnLoad" type="Function"> 110 /// æåå è½½åè°å½æ° 111 /// </param> 112 var element = website.getById(elementId); 113 url = url || element.attr("url"); 114 $.ajax({
115 url: website.getNoCacheUrl(url, data), 116 type: 'GET', 117 dataType: "html", 118 success: function (result) { 119 element.html(result); 120 website.initControls(element); 121 if (fnLoad) 122 fnLoad(result); 123 } 124 }); 125 }, 126 initControls: function (context) { 127 /// <summary> 128 /// åå§åç»ä»¶ 129 /// </summary> 130 /// <param name="context" type="Object"> 131 /// ä¸ä¸æ 132 /// </param> 133 if ($.initBootstrap) 134 $.initBootstrap(context); 135 if ($.initPagination) 136 $.initPagination(context); 137 if ($.initSelect2) 138 $.initSelect2(context); 139 }, //ajaxé误å¤ç 140 ajaxError: function (xmlHttpRequest, ajaxOptions, error) { 141 window.alert("Httpç¶æ: " + xmlHttpRequest.status + " " + xmlHttpRequest.statusText + "\nåæ°: " + ajaxOptions + "\né误:" + error + "\n" + xmlHttpRequest.responseText); 142 } 143 }; 144}()); 145
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.