zoukankan      html  css  js  c++  java
  • 【转】dojo使用方法(xmlhttp dojo.xhrGet)——?

    【转】dojo使用方法(xmlhttp dojo.xhrGet)

    xmlhttp dojo.xhrGet

    OK,介绍了简单的DOM操作方法,接下来该到Ajax的传统项目-XmlHttp了。

    在使用xmlhttp时,需要注意到编码的问题,要让dojo默认绑定为utf-8怎么办呢?很简单,只需要修改一下引入dojo.js时的标签:

    <script type="text/javascript" src="./dojo-lib/dojo/dojo.js" djConfig="isDebug:true,bindEncoding:'UTF-8'"></script>

    多了一个djConfig属性,很简单,

    第一个isDebug是说是否打开FireBug的Console,

    第二个是xmlhttp使用的编码。第二个才是重点,设置了就一劳永逸了。

    这次我们要点击了hello按钮后发出一个xmlhttp请求:

    function sayHello() {     
    
    dojo.xhrGet({         
    
    url: "http://localhost/hello/sayHello.jsp",         
    
    handleAs: "text",         
    
    load: function(responseText)         {           
    
    alert(responseText);           
    
    dojo.byId("divHello").innerHTML = responseText;         
    
    },         
    
    error: function(response)         {          
    
    alert("Error");        
    
    }    
    
    }); 
    
    } 
    View Code

    dojo.connect(btn,"onclick",sayHello);

    看看,够不够一目了然?

    url 就是url…… ;

    handleAs 把获取的内容作为text/html ;load 成功时的回调函数;error 失败时的回调函数

    那如果要传入参数怎么办?

    var params = {     username:'Mark',     id:'105' }

    dojo.xhrGet({     url: "http://localhost/hello/sayHello.jsp",     content:params,     //... });

    注意那个content参数,你要传入的参数是个关联数组/object,dojo会自动把参数解析出来,要使用post方法?

    dojo.xhrGet ---> dojo.xhrPost ,其他的还有,dojo.xhrPut、dojo.xhrDelete。 (

     

     

    为什么我用dojo.parser.parse(dom节点)两次会出错

    2013-01-05 22:23tanikou | 分类:网站使用 | 浏览848次
    问题:
    我想用分部分加载HTML到页面,当把上一次加载进来parse后,再点一下加载HTML进来parse就出错了.请问这是为什么,或者说如何做到可以多次加载HTML进来并转换为dojo类型的节点
    解答:
    dojo的parser会把html节点根据所声明的类型(data-dojo-type)转化为相应的dijit组件的template(dojo类型的节点),并且会给这些相应的template赋上对应的id,属性等等,并且把组件的id注册到dijit.registry里。在注册到registry的过程中,如果没有显式的指定id,则registry会生成一个自增的id赋值给相应的组件,如果显式的指定id,则使用指定的id。如果对同一节点多次parse操作,并且这些节点中有指定id的情况,就会出现你说的这种情况,报的错应该是Tried to register widget with id==xxx but that id is already registered。如果想分步加载并且多次parse,可以加载一个节点parse一个节点。或者在代码中调用dijit组件的startup方法也可实现parse的同样效果。
  • 相关阅读:
    Proxies
    内置的Symbol值
    css兼容问题大全
    Jquery ajax方法详解
    Ajax笔记
    Jquery笔记
    Css3笔记
    JavaScript学习笔记
    10 款优秀的文件管理插件推荐
    初始化和预装载servlet与JSP页面
  • 原文地址:https://www.cnblogs.com/aiyouku/p/xmlhttp_dojo_xhrGet.html
Copyright © 2011-2022 走看看