利用DWR來自動填寫表格

1、將dwr.jar放至WEB-INF/lib下面
2、將dwr.xml放至WEB-INF下面
  <allow>
      <create creator="new" javascript="AddressLookup">
         <param name="class" value="zdsystem.AddressLookup"/>
      </create>
  </allow>

3.在web.xml中添加

     <servlet>
       <servlet-name>dwr-invoker</servlet-name>
       <servlet-class>org.directwebremoting.servlet.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>
4.index.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Dynamic Address Entry Demo</title>

  <script type='text/javascript' src='../dwr/engine.js'> </script>
  <script type='text/javascript' src='../dwr/util.js'> </script>
  <script type='text/javascript' src='../dwr/interface/AddressLookup.js'> </script>
  <script>
function fillAddress() {
  var sfzh = dwr.util.getValue("sfz");
  AddressLookup.fillAddress(sfzh, function(address) {
    dwr.util.setValues(address);
  });
}
  </script>
</head>
<body>
<div id="tabContents">

  <div id="demoDiv">
    <table>
  <tr>
    <td>Zipcode/Postcode:</td>
    <td><input id="sfz" type="text" onchange="fillAddress()"/></td>
  </tr>
  <tr>
    <td>姓名:</td>
    <td><input id="name" type="text"/></td>
  </tr>
  <tr>
    <td>地址:</td>
    <td><input id="address" type="text"/></td>
  </tr>
</table>
</body>
</html>

5.AddressLookup.java

package zdsystem;

import java.util.HashMap;
import java.util.Map;
import com.comingnet.db.ProxoolAction;
import org.directwebremoting.util.LocalUtil;

/**
 * @author Joe Walker [joe at getahead dot ltd dot uk]
 */
public class AddressLookup
{

 private static final String NAME_1 = "name";
    private static final String ADDRESS_1 = "address";
   
    public Map fillAddress(String orgsfz)
    {
     Map reply = new HashMap();
        String sfz = LocalUtil.replace(orgsfz, " ", "");

       
       
  
        if (sfz.equalsIgnoreCase("4567899999999"))
        {
            reply.put(NAME_1, "ff");
            reply.put(ADDRESS_1, "aa");
        }else if (sfz.equalsIgnoreCase("555656556565655"))
        {
            reply.put(NAME_1, "sss");
            reply.put(ADDRESS_1, "Na");
        }
        else
        {
            reply.put(NAME_1, "");
            reply.put(ADDRESS_1, "");
        }

        return reply;
    }
}
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章