/********************/
util.js包含一些有用的函数function,用于在客户端页面调用.
主要功能如下:


代码

$() 获得页面参数值   
addOptions and removeAllOptions 初始化下拉框   
addRows and removeAllRows   填充表格   
getText   取得text属性值   
getValue 取得form表单值   
getValues 取得form多个值   
onReturn     
selectRange   
setValue   
setValues   
toDescriptiveString   
useLoadingMessage   
Submission box


*********************************************************************
*********************************************************************


代码

1. $()函数   
2. IE5.0
3. $ = document.getElementById   
4. 取得form表单值   
5. var name = $("name");

***********************************************************************************
***********************************************************************************
2、用于填充 select 下拉框 option


代码


    1. a、如果你想在更新select 时,想保存原来的数据,即在原来的select中添加新的option:   
    2.      var sel = DWRUtil.getValue(id);   
    3.      DWRUtil.removeAllOptions(id);   
    4.      DWRUtil.addOptions(id,...);   
    5.      DWRUtil.setValue(id,sel);   
    6.      demo:比如你想添加一个option:“--请选择--”   
    7. DWRUtil.addOptions(id,["--请选择--"]);    
    8.    
    9. 5中方式:

     


    代码

    1. @ Simple Array Example: 简单数组   
    2.      例如:   
    3. new
    4. "demo1",array);


    代码

    1. @ Simple Object Array Example 简单数组,元素为beans   
    2.        这种情况下,你需要指定要显示 beans 的 property 以及 对应的 bean 值   
    3.        例如:   
    4. public class
    5. private
    6. private
    7.       pirvate String address;   
    8. public void
    9. public
    10.         }   
    11. "demo2",array,'id','name');   
    12.         其中id指向及bean的id属性,在optiong中对应value,name指向bean的name属性,对应下拉框中显示的哪个值.


    代码

    1. @ Advanced Object Array Example 基本同上   
    2. "demo3",    
    3.                  [{ name:'Africa', id:'AF' },   
    4.                   { name:'America', id:'AM' },   
    5.                   { name:'Asia', id:'AS' },   
    6.                   { name:'Australasia', id:'AU' },   
    7.                   { name:'Europe', id:'EU' }   
    8.          ],'id','name');


    代码

    1. @ Map Example 用制定的map来填充 options:   
    2.         如果 server 返回 Map,呢么这样处理即可:   
    3. "demo3",map);   
    4.         其中 value 对应 map keys,text 对应 map values;


    代码

    1. @ <ul> and <ol> list editing   
    2.         
    3.         DWRUtil.addOptions() 函数不但可以填出select,开可以填出<ul>和<ol>这样的heml元素

    ***********************************************************************************
    ***********************************************************************************
    3、addRows and removeAllRows 填充表格
    DWR 提供2个函数来操作 table;
    ----------------------------
    DWRUtil.addRows(); 添加行
    ----------------------------
    DWRUtil.removeAllRows(id); 删除指定id的table
    ----------------------------
    下面着重看一下 addRows() 函数:

    DWRUtil.addRows(id, array, cellfuncs, [options]);
    其中id 对应 table 的 id(更适合tbodye,推荐使用 tbodye)
    array 是server端服务器的返回值,比如list,map等等
    cellfuncs 及用返回值来天春表格
    [options] 用来设置表格样式,它有2个内部函数来设置单元格样式(rowCreator、cellCreator)。

    比如: server端返回list,而list中存放的是下面这个 bean:


    代码

    1. public class
    2. private
    3. private
    4. pirvate String address;   
    5. public void
    6. public
    7.       }


    下面用 DWRUtil.addRows();
    /******************************************************************************/
    /****************** ***********fzfx88@hotmail.com********************************/
    /*********************************************************************************/


    代码

    function userList(data){   
        //var delButton = "<input type='button'/>";   
        //var editButton = "<input type='button'/>";   
         var cellfuncs = [   
             function(data){return data.id;},   
             function(data){return data.userName;},   
             function(data){return data.userTrueName;},   
             function(data){return data.birthday;},   
             function(data){   
             var idd = data.id;   
    var delButton = document.createElement("<INPUT TYPE='button' οnclick='delPerson("+ idd +")'>");   
                 delButton.setAttribute("id","delete");   
                 delButton.setAttribute("value","delete");   
                return delButton;   
             },   
             function(data){   
                 var idd = data.id;   
                 var editButton = document.createElement("<INPUT TYPE='button' οnclick='editPerson("+ idd +")'>");   
                 editButton.setAttribute("name","edit");   
                 editButton.setAttribute("value","edit");               
                return editButton;   
             }   
         ];   
         DWRUtil.removeAllRows('tabId');    
         DWRUtil.addRows('tabId', data,cellfuncs,{   
         rowCreator:function(options) {   
             var row = document.createElement("tr");   
             var index = options.rowIndex * 50;   
             row.setAttribute("id",options.rowData.id);   
             row.style.collapse = "separate";   
             row.style.color = "rgb(" + index + ",0,0)";   
            return row;   
         },   
         cellCreator:function(options) {   
             var td = document.createElement("td");   
             var index = 255 - (options.rowIndex * 50);   
            //td.style.backgroundColor = "rgb(" + index + ",255,255)";   
             td.style.backgroundColor = "menu";   
             td.style.fontWeight = "bold";   
             td.style.align = "center";   
            return td;   
         }          
         });   
         document.getElementById("bt").style.display = "none";   
          }

     

     

    待续…………………………………………
    /********************************************************************************/
    /********************************************************************************/
    4、getText 取得text属性值

    DWRUtil.getText(id): 用来获得 option 中的文本
    比如:


    代码

    1. <select id="select">
    2. <option  value="1"> 苹果 </option>
    3. <option  value="2" select> 香蕉 </option>
    4. <option  value="3"> 鸭梨 </option>
    5. </select>

    调用 DWRUtil.getText("select"); 将返回 "香蕉" 字段;
    DWRUtil.getText(id);仅仅是用来获得 select 文本值,其他不适用。
    /******************************************************************************/
    /******************************************************************************/
    /******************************************************************************/

    5、DWRUtil.getValue(id): 用来获得 form 表单值

    有如下几种情况:


    代码

    1. "textarea"): DWRUtil.getValue("textarea")将返回 Text area的值;   
    2. Selection list (id="select"): DWRUtil.getValue("select") 将返回 Selection list 的值;   
    3. Text input (id="text"): DWRUtil.getValue("text") 将返回 Text input 的值;   
    4. Password input (id="password"): DWRUtil.getValue("text") 将返回 Password input 的值;   
    5. Form button (id="formbutton"): DWRUtil.getValue("formbutton") 将返回 Form button 的值;   
    6. Fancy button (id="button"): DWRUtil.getValue("formbutton") 将返回 Fancy button 的值;

    /******************************************************************************/
    /******************************************************************************/
    /******************************************************************************/

    6、getValues 取得form多个值
    批量获得页面表单的值,组合成数组的形式,返回 name/value;

    例如: form():


    代码

    1. <input type="textarea" id="textarea" value="1111"/>
    2. <input type="text" id="text" value="2222"/>
    3. <input type="password" id= "password" value="3333"/>
    4. <select id="select">
    5. <option  value="1"> 苹果 </option>
    6. <option  value="4444" select> 香蕉 </option>
    7. <option  value="3"> 鸭梨 </option>
    8. </select>
    9. <input type="button" id="button" value="5555"/>
    10.         
    11.       那么: DWRUtil.getValues({textarea:null,select:null,text:null,password:null,button:null})   
    12.       将返回   ^^^^^^^^^^^^^^^^{textarea:1111,select:4444,text:2222,password:3333,button:5555}

    /******************************************************************************/
    /******************************************************************************/
    /******************************************************************************/

    7、DWRUtil.onReturn 防止当在文本框中输入后,直接按回车就提交表单。

    <input type="text" οnkeypress="DWRUtil.onReturn(event, submitFunction)"/> 
    <input type="button" οnclick="submitFunction()"/>

    /******************************************************************************/
    /******************************************************************************/
    /******************************************************************************/

    8、DWRUtil.selectRange(ele, start, end);

    在一个input box里选一个范围


    代码

    1. DWRUtil.selectRange("sel-test", $("start").value, $("end").value);   
    2.    
    3. 比如:<input type="text" id="sel-test" value="012345678901234567890">   
    4.    
    5. DWRUtil.selectRange("sel-test", 2, 15);


    结果 文本框中的值"2345678901234"将被选中'

    /******************************************************************************/
    /******************************************************************************/
    /******************************************************************************/

    9、DWRUtil.setValue(id,value);
    为指定的id元素,设置一个新值;
    /******************************************************************************/
    10、DWRUtil.setValues({

    name: "fzfx88", 
    password: "1234567890" 
    } 
    ); 同上,批量更新表单值. 
    /******************************************************************************/

    11、DWRUtil.toDescriptiveString()

    带debug信息的toString,第一个为将要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 最多分析到第二层子元素的多行调试<input type="text" id="text"> 
    DWRUtil。toDescriptiveString("text",0); 
    /******************************************************************************/12、DWRUtil.useLoadingMessage(); 
    当发出ajax请求后,页面显示的提示等待信息;


    代码


     


    function searchUser(){   
        var loadinfo = "loading....."   
    try{   
         regUser.queryAllUser(userList);   
         DWRUtil.useLoadingMessage(loadinfo);           
    }catch(e){   
       
    }   
        }

     

    /*****************************************************************************/