javascript - 没有显示问题但不起作用 - dwr

标签 javascript jsp dwr

大家好,我正在使用 dwr 处理 java-servlet 中的 ajax 调用,

这是我的dwr.xml,

<?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>
        <create creator="new" javascript="TempCardServlet">
            <param name="class" value="com.slingmeadia.notifier.servlet.TempCardServlet"/>
        </create>
    </allow>
</dwr>

这是我的 servlet 文件,我称之为

package com.slingmeadia.notifier.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.LinkedHashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;


public class TempCardServlet extends HttpServlet {
 @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {


        String funtionType="";
        if(request.getParameter("functiontype")!=null){
            funtionType = (String)request.getParameter("functiontype");
        }
        if(funtionType.equals("logout")){
            processLogout(request, response);
        }else{

        }

    }
@Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processLogout(request, response);
    }
    public Map sampleFill(int empid,String functiontype){
      System.out.println("functiontype : "+functiontype);
        Map employeeData = new LinkedHashMap();
        if(functiontype.equals("add")){
            employeeData.put("name", "Antony");
        }else{
            employeeData.put("name", "Antony");
            employeeData.put("cardnumber", "87896857852");
            employeeData.put("issuedate", "17/01/2012");
        }
        return employeeData;
    }


}

这就是我从 jsp 文件中调用方法的方式:

<script src='dwr/engine.js'></script>
        <script src='dwr/util.js'></script>
        <script src='dwr/interface/TempCardServlet.js'></script>

        <script>
            function getValues(id) {
                var empid = id.value;
                var optionValue = document.getElementById("selectedOption").value;
                TempCardServlet.sampleFill(empid,optionValue,{callback:setValues,async:false});
            }
            function setValues(tempcardMap) {
                if(tempcardMap !=null){
                    document.getElementById("empname").value=tempcardMap.name;
                    document.getElementById("tempcardnumber").value=tempcardMap.cardnumber;
                    document.getElementById("dateofissue").value=tempcardMap.issuedate;
                }
            }
</script>

这就是我如何调用 javascript 方法:

<td width="55%"><input class="inputBoxes" type="text" name="empid" id="empid" onblur="getValues(this)" /></td>

似乎一切都安排得很好,没有问题,但它不起作用,也不要给出任何异常。

我也试过喜欢这个

在 url 中我输入了 http://localhost:8080/acct/dwr/index.html

它给了我 DWR 已知的类列表:我的类文件也在那里,当我试图从浏览器打开类文件并提供一些示例输入时,它没有给出任何错误也没有输出。

请帮我解决这个问题。

问候。

最佳答案

1.查看dwr路径

如果您要将 View 文件放在 WEB-INF 中,则

<script src='dwr/engine.js'></script>         
<script src='dwr/util.js'></script>         
<script src='dwr/interface/TempCardServlet.js'></script> 

引用这种方式会起作用。如果不行,你必须像下面这样给出正确的路径

<script src='../dwr/engine.js'></script> 
<script src='../dwr/util.js'></script> 
<script src='../dwr/interface/TempCardServlet.js'></script> 

关于javascript - 没有显示问题但不起作用 - dwr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11447133/

相关文章:

javascript - 在 android 应用程序中实现 javascript 导致问题

java - 在 JSP 中使用 try 语句时出现输出问题

java - 绝对 uri : http://www. springsource.org/tags/form 无法在 web.xml 或随此应用程序部署的 jar 文件中解析

java - 如何从 JSP 页面获取日期字段到repositoryFormHandler?

java - 如何将InputStream转换为ZIP格式?

java - DWR有时会死在GAE服务器上

javascript - 如何停止 Javascript forEach?

javascript - 使用pm2时如何自动重新加载Node.js项目

ajax - setInterval 和轮询之间的区别?

javascript - 前置没有 ID 的 Div 集合