jsp+Ajax入门

1、web.xml中添加:
        <servlet>
  <display-name>DWR Servlet</display-name>
  <servlet-name>dwr-invoker</servlet-name>
  <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
  <init-param>
   <param-name>debug</param-name>
   <param-value>true</param-value>
  </init-param>
 </servlet>

  
 <servlet-mapping>
  <servlet-name>dwr-invoker</servlet-name>
  <url-pattern>/dwr/*</url-pattern>
 </servlet-mapping>

2、在WEB-INF目录下的web.xml旁边创建一个dwr.xml文件。可以从最简单的配置开始:
<!DOCTYPE dwr PUBLIC
    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
    "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
  <allow>
    <create creator="new" javascript="JDate">    //这个是在javascript中对应的对象变量名
      <param name="class" value="java.util.Date"/>  //java中的类
    </create>
    <create creator="new" javascript="Demo">    
      <param name="class" value="your.java.Bean"/>
    </create>
  </allow>
</dwr>

3、在jsp文件中添加:
<script type='text/javascript'

src="${pageContext.request.contextPath}/dwr/engine.js"></script>
<script type='text/javascript' src="${pageContext.request.contextPath}/dwr/util.js"></script>
<script type='text/javascript'

src="${pageContext.request.contextPath}/dwr/interface/jsDate.js"></script>

4、调用:
< script >

    function displayDate()

    {

       var str = JDate.toString(); //在web.xml中对应的类对象

       alert(str);

    }

</ script >

5、反包括原则:
       java function:
       public List getTableContent() {
  
  ArrayList list = new ArrayList();

  TableRow row = null;
  
  row = new TableRow();
  row.setId(1);
  row.setName("Yao Ming");
  row.setRebound("20");
  row.setScore("36.5");
  row.setTurnovers("5");
  row.setDescription("Center");
  list.add(row);
  
  row = new TableRow();
  row.setId(2);
  row.setName("Mcgrady");
  row.setRebound("9");
  row.setScore("28.2");
  row.setTurnovers("4");
  row.setDescription("Guard");
  list.add(row);
  
  row = new TableRow();
  row.setId(3);
  row.setName("Tim Duncan");
  row.setRebound("14");
  row.setScore("31.7");
  row.setTurnovers("5");
  row.setDescription("Forward");
  list.add(row);
  
  row = new TableRow();
  row.setId(4);
  row.setName("Kevin Garnett");
  row.setRebound("22");
  row.setScore("36.2");
  row.setTurnovers("4");
  row.setDescription("Forward");
  list.add(row);
  
  return list;
  
 }

 /
javascript方法:/
function test() {
 listService.getTableContent(show);//getTableContent实际是返回List.
                                          //show实际是调用List
                                          //这个就是反引用了
}

function show(list) {
 DWRUtil.removeAllRows('recordbody');//DWRUtil对象参看下边说明
 alert(DWRUtil.toDescriptiveString(list, 2));
 DWRUtil.addRows('recordbody',list,[getPlayerid, getPlayername, getPlayerscore,

getPlayerrebound, getPlayerturnover]);
}

$();

功能:相当于document.getElementById(id);

参数: id或name属性值;

例:

 

<script>

       Var ele=$(txt_test);

       Var str=DWRUtil.toDescriptiveString(ele,1)

       DWRUtil.debug(str);

</script>

 

DWRUtil.getValue();

功能:获得指定元素value值

参数: id或name属性值;

注意:该函数只能用于有value属性的元素

例:

 

<script>

       var val=DWRUtil.getValue(“txt_test”);

       DWRUtil.debug(val);

</script>

 

DWRUtil.getValues();

功能:获得一组指定元素的value值;

参数:id或name构成的数组对象

例:

 

 

<script>

       Var arr_=DWRUtil.getValues({“txt_name”:null,”txt_pswd”:null});

       Var str=DWRUtil.toDescriptiveString(arr,1)

       DWRUtil.debug(str);

</script>

 

DWRUtil.setValue();

功能:设置指定元素的value值

参数: id或name属性值

 

<script>

       DWRUtil.setValue(“txt_test”,”wiley”);

</script>

 

 

DWRUtil.setValues();

功能:设置一组指定元素的值

参数: id或name构成的数组对象

例:

 

 

<script>

       DWRUtil.setValues({“txt_name”:”wiley”,”txt_pswd”:”wiley”});

</script>

 

DWRUtil.getText();

功能:获得select元素的文本值

参数: id或name属性值

例:

        wiley中国

<script>

       Var txt=DWRUtil.getText (“sel_test”);

       Var val=DWRUtil.getValue(“sel_test”);

       DWRUtil.debug(“Text:”+txt+”/tValue:”+val);

</script>

 

DWRUtil.addRows();

功能:指定表格添加行

格式:DWRUtil.addRows(id,items, functions);

参数:

第一个参数:table或tbody的id属性值

第二个参数:数组或链表(可能用词不是很适合)

第三个参数:函数链表

 

例1:

<script>

       Var arr_={“wiley’s blog”,”wiley中国”};

       DWRUtil.addRows(“tby_test”,arr_,[function(arr_){return arr_}]);

</script>

 

 

例2:


<script>

       Var items=[{“name”:”wiley中国”,”add”:”wiley-cn.com”}];

       DWRUtil.addRows(“tby_test”,items,[function(item){return item.name}, function(item){return item.add}]);

</script>

 

DWRUtil.romoveAllRows();

功能:删除指定表格行

参数:table或tbody的id属性值

<script>

       DWRUtil.romoveAllRows(“tby_test”);//每次添加前将原有数据行删除,防止数据重叠

       Var items=[{“name”:”wiley中国”,”add”:”wiley-cn.com”}];

       DWRUtil.addRows(“tby_test”,items,[function(item){return item.name}, function(item){return item.add}]);

</script>

 

DWRUtil.addOptions();

功能:添加select元素的option子元素

格式:DWRUtil.addOption(id,items)或DWRUtil.addOption(id,items,valueProp,textProp);

参数:

第一个参数:select的id或name属性值

第二个参数:数组或链表(填充数据)

第三、四个参数:链表节点的属性,第三个填充value值,第四个填充text值

 

例:

 

<script>

       Var arr_={“wiley”,”wiley中国”};

       DWRUtil.addRows(“sel_test”,arr_);//此时value与text值相同

       DWRUtil.romoveAllOptions(“sel_test”);

       Var items=[{“name”:”wiley中国”,”add”:”wiley-cn.com”}];

       DWRUtil.addRows(“sel_test”,”add”,”name”);//此时value与text不相同

</script>

 

DWRUtil.romoveAllOptions();

功能:删除指定select元素的option子元素

参数:select元素的id或name属性值

例:前面例子有用到

 

DWRUtil.debug();

功能:等价于alert()

例:前面例子有用到

 

DWRUtil.toDescriptiveString();

功能:将对象序列化成字符串,主要用于调试

例:前面的例子有用到

 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值