dojo 之基础篇(三)之向服务器发送数据

向服务器发送数据有get和post两种.

首先,要将body中的html代码替换为

 <button dojoType="Button" widgetId="helloButton">Hello World!</button>
<br>
请输入名称: <input type="text" id="name">
不输入数据,怎么提交数据呢.
  1. get
    我们只要将基础篇(二)中的:
     function helloPressed()
    {
    dojo.io.bind({
    url: 'response.txt',
    handler: helloCallback
    });
    }
    替换为:
     function helloPressed()
    {
    dojo.io.bind({
    url: 'HelloWorldResponseGET.jsp',
    handler: helloCallback,
    content: {name: dojo.byId('name').value }
    });
    }
    即可.其中的url不用说也明白了吧.是相对路径.也就是说在HelloWorld.html的当前目录
    下应该有一个 HelloWorldResponseGET.jsp 文件. handler还是一样,处理返回的数据,
    如果有的话.
    content即为要发送的数据. 其中名称为name,name的值为你所输入的值.

    这样,我们可以在jsp中写入简单的代码来获得这个值,以下为jsp中的代码

    <%
    /*
    ' HelloWorldResponseGET.jsp
    ' --------
    '
    ' 打印name的值.
    '
    */

    response.setContentType("text/plain");
    %>
    Hello <%= request.getParameter("name") %> ,欢迎来到dojo世界!
  2. Post
    这种方法即为在form表单提交提交数据.

    相应的html代码为:
     <button dojoType="Button" widgetId="helloButton">Hello World!</button>
    <br>
    <form id="myForm" method="POST">
    请输入名称: <input type="text" name="name">
    </form>
    dojo代码为:
     function helloPressed()
    {
    dojo.io.bind({
    url: 'HelloWorldResponsePOST.jsp',
    handler: helloCallback,
    formNode: dojo.byId('myForm')
    });

    }
    这里将content属性变为了formNode属性.

    jsp的代码不变.
到此,dojo的基础篇告一段落. 这些内容来自dojo的官方网站. 更详细的内容请参考官网.
http://dojo.jot.com/WikiHome/Tutorials/HelloWorld

%s 个评论

要回复文章请先登录注册