<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    不做浮躁的人
    正在行走的人...
    posts - 171,  comments - 51,  trackbacks - 0

    我們接dojoTree Controller(1)繼續(xù)討論 TreeLoadingController
    1:該類在TreeBasicController基礎(chǔ)上增加了RPCUrl和RPCActionParam(默認(rèn)為action)兩個(gè)參數(shù)。解釋這兩個(gè)參數(shù)必須看下面的代碼:
    if (this.RPCUrl == "local") {
    ???var dir = document.location.href.substr(0, document.location.href.lastIndexOf('/'));
    ???var localUrl = dir+"/"+action;
    ???//dojo.debug(localUrl);
    ???return localUrl;
    ??}

    ??if (!this.RPCUrl) {
    ???dojo.raise("Empty RPCUrl: can't load");
    ??}

    ??return this.RPCUrl + ( this.RPCUrl.indexOf("?") > -1 ? "&" : "?") + this.RPCActionParam+"="+action;

    2:通用的錯(cuò)誤處理器:
    ??RPCErrorHandler: function(type, obj, evt) {
    ??alert( "RPC Error: " + (obj.message||"no message"));
    ?},
    可以自己定義處理方式。

    3:看以下runRPC的這段代碼,就能明白服務(wù)器端該怎么處理請(qǐng)求:
    dojo.io.bind({
    ???url: kw.url,
    ???/* I hitch to get this.loadOkHandler */
    ???handle: dojo.lang.hitch(this, handle),
    ???mimetype: "text/json",
    ???preventCache: true,
    ???sync: kw.sync,
    ???content: { data: dojo.json.serialize(kw.params) }?
    ??});
    4:loadRemote是動(dòng)態(tài)裝載該節(jié)點(diǎn)的子節(jié)點(diǎn)的方法,可以看看該方法的rpc部分:
    var params = {
    ???node: this.getInfo(node),
    ???tree: this.getInfo(node.tree)
    ??};
    dojo.io.bind({
    ???url: kw.url,
    ???/* I hitch to get this.loadOkHandler */
    ???handle: dojo.lang.hitch(this, handle),
    ???mimetype: "text/json",
    ???preventCache: true,
    ???sync: kw.sync,
    ???content: { data: dojo.json.serialize(kw.params) }
    ??});
    5:相對(duì)TreeBasicController,該Controller還重寫了doMove和doCreateChild方法。
    doMove: function(child, newParent, index) {
    ??/* load nodes into newParent in sync mode, if needed, first */
    ??if (newParent.isTreeNode && newParent.state == newParent.loadStates.UNCHECKED) {
    ???this.loadRemote(newParent, true);
    ??}

    ??return dojo.widget.TreeBasicController.prototype.doMove.apply(this, arguments);
    ?},
    可以看到是在同步處理完服務(wù)器的請(qǐng)求后,再執(zhí)行的客戶端操作。因此我們只要在服務(wù)器端處理添加新節(jié)點(diǎn)和移動(dòng)節(jié)點(diǎn)時(shí),只要返回true或false就可以了。

    posted on 2006-11-22 23:15 不做浮躁的人 閱讀(991) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    <2006年11月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    常用鏈接

    留言簿(9)

    隨筆分類(31)

    隨筆檔案(75)

    文章分類(1)

    文章檔案(3)

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 国产偷国产偷亚洲高清日韩| 免费看污成人午夜网站| 哒哒哒免费视频观看在线www| 亚洲欧洲精品国产区| 99爱在线精品视频免费观看9 | 在线免费观看毛片网站| jlzzjlzz亚洲jzjzjz| 国产在线a免费观看| 中文字幕在线日亚洲9| 天天操夜夜操免费视频| 亚洲AV无码专区在线电影成人| 日韩激情无码免费毛片| 免费大片黄在线观看| 亚洲国产成人精品久久久国产成人一区二区三区综| 亚洲国产AV一区二区三区四区| 国产精品无码一区二区三区免费| 理论亚洲区美一区二区三区 | 最近中文字幕免费大全| 久久噜噜噜久久亚洲va久| 国产曰批免费视频播放免费s| 亚洲国产福利精品一区二区| 成人免费无码大片A毛片抽搐| 色欲aⅴ亚洲情无码AV| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 午夜无码A级毛片免费视频| 亚洲视频一区在线| 成年女人免费碰碰视频| 羞羞视频网站免费入口| 国产精品亚洲аv无码播放| 亚洲高清免费在线观看| 国产亚洲一卡2卡3卡4卡新区 | 亚洲日韩v无码中文字幕| 57pao国产成视频免费播放| 亚洲天堂2017无码中文| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 狠狠色伊人亚洲综合网站色 | 少妇中文字幕乱码亚洲影视| 成年人免费视频观看| 中文字幕免费在线观看动作大片| 亚洲欧洲日产韩国在线| 亚洲国产精品成人|