以下是一个DWR框架的简单配置以及JavaScript的Ajax实现: DWR配置: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd"> <dwr> <allow> <convert match="java.lang.Object" converter="bean"/> <convert match="java.util.List" converter="bean"/> <create creator="new" javascript="Product"> <param name="class" value="com.sunfairs.common.AjaxBean"/> <include method="getProductNameByModel" /> </create> </allow> <allow> <create creator="new" javascript="Order"> <param name="class" value="com.sunfairs.common.AjaxBean"/> <include method="getPayAccountsByMethod"/> </create> </allow> </dwr> JavaScript实现: var productModelElement = document.getElementById("productModel"); var productNameElement = document.getElementById("tradmemo"); var plsSelect = document.getElementById("plsSelect"); function generateProductName(){ var productModel = productModelElement.value; Product.getProductNameByModel(productModel,refreshProductName); } function refreshProductName(productList){ var productName = ""; var option = null; var array = new Array(); productList = productList.replace("[","").replace("]","").replace(" ",""); array = productList.split(","); var plsSelectOption = new Option(plsSelect.value,""); dwr.util.removeAllOptions(productNameElement); productNameElement.options.add(plsSelectOption); dwr.util.addOptions(productNameElement,array); } var payMethodElement = document.getElementsByName("cartPayment.paymentMethod")[0]; var payAccountsElement = document.getElementsByName("cartPayment.accounts")[0]; var plsSelect = document.getElementById("plsSelect"); function generatePayAccounts(){ var payMethod = payMethodElement.value; Order.getPayAccountsByMethod(payMethod,refreshPayAccounts); } function refreshPayAccounts(payMethodList){ var payAccounts = ""; var option = null; var array = new Array(); payMethodList = payMethodList.replace("[","").replace("]","").replace(" ",""); array = payMethodList.split(","); var plsSelectOption = new Option(plsSelect.value,""); dwr.util.removeAllOptions(payAccountsElement); payAccountsElement.options.add(plsSelectOption); dwr.util.addOptions(payAccountsElement,array); payAccountsElement.options[1].selected="true"; }