<html>
<head>
<script type='text/javascript' src='dwr/interface/getBizByBizClass.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<script type="text/javascript">
function test(bizClassId){
getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId,
function (value){
         DWRUtil.removeAllOptions("opts");
     DWRUtil.addOptions("opts", value, 'bizId', 'bizName');
}
);
}
</script>
</head>
<body>
<input type="text" onblur="test('1');" name="abc">
<select id="opts"></select>
</body>
</html>
此JSP放在/WebRoot下没问题,当放入/WebRoot/jsp下就报js错误:对象不支持此属性或方法

解决方案 »

  1.   

    <script type='text/javascript' src='dwr/interface/getBizByBizClass.js'> </script>
    <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/getBizByBizClass.js'> </script>
    <script type='text/javascript' src='/dwr/engine.js'> </script>
    <script type='text/javascript' src='/dwr/util.js'> </script>
    你的 文件夹dwr 要在 WebRoot 目录下哦
      

  2.   


    <script type='text/javascript' src='../dwr/interface/getBizByBizClass.js'> </script> 
    <script type='text/javascript' src='../dwr/engine.js'> </script> 
    <script type='text/javascript' src='../dwr/util.js'> </script> 
      

  3.   

    来人帮帮哦!!!
    web.xml<listener>
    <listener-class>
    org.directwebremoting.servlet.DwrListener
    </listener-class>
    </listener>

    <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.   

       你写成绝对路径试下看看。
    在dwr/interface/getBizByBizClass.js  前面加上工程名
      

  5.   

    <%=request.getContextPath()%>/dwr/........
      

  6.   


    这跟  /项目名称/dwr/。一样的哦
      

  7.   


    <script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'> </script>
     <script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'> </script> 这样试下
      

  8.   

    你所有都加个了吗??包括你的
    <script type='text/javascript' src='dwr/interface/getBizByBizClass.js'> </script> 
      

  9.   


    我几乎试了所有的<% 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath(); 
    %> 
    <script type='text/javascript' src=" <%=basePath%>/dwr/interface/getBizByBizClass.js"></script>
    <script type='text/javascript' src=" <%=basePath%>/dwr/engine.js"></script>
    <script type='text/javascript' src=" <%=basePath%>/dwr/util.js"></script><script type='text/javascript' src='dwr/interface/getBizByBizClass.js'></script>
    <script type='text/javascript' src='dwr/engine.js'></script>
    <script type='text/javascript' src='dwr/util.js'></script><script type='text/javascript' src='/DLS_Project/dwr/interface/getBizByBizClass.js'></script>
    <script type='text/javascript' src='/DLS_Project/dwr/engine.js'></script>
    <script type='text/javascript' src='/DLS_Project/dwr/util.js'></script><script type='text/javascript' src="<%=request.getContextPath()%>/dwr/interface/getBizByBizClass.js"></script>
    <script type='text/javascript' src="<%=request.getContextPath()%>/dwr/engine.js"></script>
    <script type='text/javascript' src="<%=request.getContextPath()%>/dwr/util.js"></script><script type='text/javascript' src='../dwr/interface/getBizByBizClass.js'></script>
    <script type='text/javascript' src='../dwr/engine.js'></script>
    <script type='text/javascript' src='../dwr/util.js'></script><script type='text/javascript' src='${pageContext.request.contextPath}/dwr/interface/getBizByBizClass.js'> </script>
    <script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'> </script>
    <script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'> </script>
      

  10.   


    缓存文件放在哪儿?DWR的JS是在JAR包里,动态生成的在哪儿?
      

  11.   

      我的就是放在webroot/info/这包里面的使用这样的路径没有影响的~~你先改下这样后面
    function test(bizClassId){ 
    alert(bizClassId);//确认进入方法
    //这里和你getBizByBizClass下的方法名字searchBizByBizClassIdUseDWR是否有异???
    getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId, 
    function (value){ 
        alert(value); //是否进入这里??
        //DWRUtil.removeAllOptions("opts"); 
        //DWRUtil.addOptions("opts", value, 'bizId', 'bizName'); 

    ); 

    一步一步试下,不用急呢
      

  12.   


    那会不会是包的问题,我用的是DWR3。还有我写的WEB.XML有问题吗?
    <listener> 
    <listener-class> 
    org.directwebremoting.servlet.DwrListener 
    </listener-class> 
    </listener> <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>
      

  13.   

      使用的tomcat服务器嘛??${tomcathome}\work\Catalina 删除
      

  14.   


    在到达getBizByBizClass.searchBizByBizClassIdUseDWR(bizClassId这一步时报:对象不支持此属性或方法
      

  15.   


    还是不行,提示getBizByBizClass未定义
      

  16.   

    打开页面,右击查看源码,看看js文件是你想要的位置吗?还有dwr的配置文件怎样写的
      

  17.   

    不知道是不版本的问题,我的配置里面
    <servlet>
         <servlet-name>dwr-invoker</servlet-name>
         <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
      </servlet>
      

  18.   

    哥哥,怪我没说明白,。是dwr.xml怎样配置,难道说这个版本不用配置了吗?不可能吧,这个可是吧java文件转化成js文件的
      

  19.   

      那就不是你页面的问题呢~~是你后面的dwr.xml的配置
    <allow>
       <create creator="new" javascript="Exercise">
          <param name="class" value="com.test.dwr.getBizByBizClass"/>  你自己的路径来定
        </create>
      </allow>
    然后这个getBizByBizClass类下面是否有searchBizByBizClassIdUseDWR这个方法
    注意大小写保持一致
      

  20.   

    有没有用到java类或者说javabean或者返回值是个类
    如果用到了
     放到</create></create> <convert converter="bean" match="com.chinaMobile.model.Charge"/>
    这里,这样再不行,我也没办法了
      

  21.   

    把  <script type='text/javascript' src=' <%=request.getContextPath()% >/dwr/interface/getBizByBizClass.js'>  </script>
    放到util.js后面