做自己的js組件倒是沒怎麼想過,只是有時候為了方便,對一些第三方的庫進行了封裝,方便使用。比如:...
ASP.Net利用WebService做Ajax互動,XML格式資料轉送,採用Javascript SoapClient類庫[http://www.guru4.net/articoli/javascript-soap-client/]。
SoapClient能用SOAP協議進行通訊,並對返回的XML結果集進行Object封裝產生JS對象(不需要自己解析xml了)
WebService
WS
public class Calc : System.Web.Services.WebService
{
[WebMethod]
public int Add(int l, int r)
{
return l + r;
}
[WebMethod]
public int Sub(int l, int r)
{
return l - r;
}
}
標準的JS調用代碼:
SOAPClient
var p = new SOAPClientParameters();
p.add("l", 1);
p.add("r", 2);
SOAPClient.invoke("./Calc.asmx", "Add", p, true, callb);
var p1 = new SOAPClientParameters();
p1.add("l", 2);
p1.add("r", 1);
SOAPClient.invoke("./Calc.asmx", "Sub", p1, true, callb);
對Paramaters進行JSON封裝:
SoapInvoke
var SoapInvoke = function (url, method, p, async, callback) {
var sp = new SOAPClientParameters();
for (var key in p) {
sp.add(key, p[key]);
}
SOAPClient.invoke(url, method, sp, async, callback);
};
比較方便的調用過程:
SoapInvoke("./Calc.asmx", "Add", { l: 1, r: 2 }, true, callb);
SoapInvoke("./Calc.asmx", "Sub", { l: 2, r: 1 }, true, callb);
支援複雜資料類型。
結束。
題外話:我是一個非常樂於動手實踐的人,很多時候很多想法,自己覺得很好,就一定會付諸行動,努力將其實現。