1、
$("id") 大概等价于document.getElementById("id"),如果返回结果唯一的话返回该元素的值,不唯一则返回一个数组 。另外,如果单独使用util.js的话,可能在IE5以下的浏览器中无法正常使用,需要跟engine.js配合使用。 注意,这里得到的是一个对象,如果需要得到该对象的值的话,需要用innerHTML来取得,或者直接用DWRUtil.getValue("elementId")来取值。
2、
DWRUtil.toDescriptiveString("elementId",debugLevel),这是一个debug用的函数.第一个参数是元素的id,第二个参数是debug等级,可以是0,1,2.随着等级增加,输出信息也会增加.注意这个函数只是一个debug工具,不要对它抱有太大幻想。
debug 等级如下:
0: Single line of debug 单行调试
1: Multi-line debug that does not dig into child objects 不分析子元素的多行调试
2: Multi-line debug that digs into the 2nd layer of child objects 最多分析到第二层子元素的多行调试
And so on. Level 2 and greater probably produce too much output.
3、
DWRUtil.getText("elementId"),返回一个select下拉菜单中的text值.仅适用于select类型的元素。
4、
DWRUtil.getValue("elementId"),返回一个元素的值,This method works for most HTML elements including selects (where the option with a matching value and not text is selected), input elements (including textareas) divs and spans
可以根据id取得value,使用这个方法,你不必在意div和select list的不同。
5、
DWRUtil.getValues({ div:null,
textarea:null,
select:null,
text:null,
password:null,
formbutton:null,
button:null
}),
获得一组指定元素的value值;参数:id或name构成的数组对象
页面:
saveuser.htm
<html>
<head>
<title>
saveUser
</title>
<!--dwr/engine.js是dwr的核心引擎脚本处理客户端调用的转换-->
<script src="/oblog312/dwr/interface/SaveUserAction.js" type="text/j avascript"></script>
<script src="/oblog312/dwr/engine.js" type="text/j avascript"></script>
<!--dwr/util.js包含了工具函数简化页面处理-->
<script src="/oblog312/dwr/util.js" type="text/j avascript"></script>
<script type="text/j avascript">
function saveuser() {
//user = { id:"", firstName:"", lastName:"", birthday:"" };
user = { id:null, firstName:null, lastName:null, birthday:null };
var params = DWRUtil.getValues(user);
alert(params);
SaveUserAction.PutParams(params);
alert("user.id:"+user.id);
alert("user.firstName:"+user.firstName);
alert("user.lastName:"+user.lastName);
alert("user.birthday:"+user.birthday);
}
function hello(ok) {
alert(ok);
}
</script>
</head>
<body bgcolor="#ffffff">
<form action="" id="userForm" name="userForm" method="POST">
ID:<input type="text" id="id" name="id" /><br />
姓:<input type="text" id="firstName" name="firstName" /><br />
名:<input type="text" id="lastName" name="lastName" /><br />
出生日期:<input type="text" id="birthday" name="birthday" /><br />
<input type="submit" οnclick="saveuser()"/>
</form>
</body>
</html>
action部分(SaveUserAction.java):
package com.action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForward;
import com.actionform.SaveUserActionForm;
import org.apache.struts.action.Action;
import java.util.*;
public class SaveUserAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
SaveUserActionForm saveUserActionForm = (SaveUserActionForm) form;
throw new java.lang.UnsupportedOperationException(
"Method $execute() not yet implemented.");
}
public String PutParams(Hashtable hash,HttpServletRequest request){
Enumeration hashenum = hash.keys();
while (hashenum.hasMoreElements()) {
String name = (String) hashenum.nextElement();
System.out.println("name:"+name);
String value = (String) hash.get(name);
System.out.println("value:"+value);
}
return "成功";
}
}
重要的dwr.xml配置部分:
<create creator="new" j avascript="SaveUserAction">
<param name="class" value="/oblog312/com.action.SaveUserAction"/>
<include method="PutParams"/>
</create>
6、
DWRUtil.onReturn(event, submitFunction) 定义在输入框中按回车的响应,防止执行submit.
7、
DWRUtil.addOptions()
待续。。。