Jquery ui Spring mvc jquery用户界面“;手风琴不是一种功能;

Jquery ui Spring mvc jquery用户界面“;手风琴不是一种功能;,jquery-ui,spring-mvc,accordion,Jquery Ui,Spring Mvc,Accordion,我在一个普通的html页面上使用了和accordion,但是当我尝试将它添加到Spring MVC页面时,我得到了一个错误:$(…)。accordion不是一个函数 这是我的WEB-INF\views\index.jsp文件的标题: <!DOCTYPE html> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <

我在一个普通的html页面上使用了和accordion,但是当我尝试将它添加到Spring MVC页面时,我得到了一个错误:
$(…)。accordion不是一个函数

这是我的
WEB-INF\views\index.jsp
文件的标题:

<!DOCTYPE html>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
         <head>
  <title>Jeeni Software Ltd</title>
  <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
  <link rel="stylesheet" href="<c:url value="css/style.css"/>" type="text/css"> 
  <link rel="stylesheet" href="<c:url value="css/menu/menu_style.css"/>" type="text/css"/>
  <script type="text/javascript" src="<c:url value="js/jquery-1.8.3.js"/>"></script>
  <script type="text/javascript" src="<c:url value="js/jquery-ui-1.9.2.js">"></script>       
  <script type="text/javascript" src="<c:url value="js/jquery.flip.js"/>"></script>

...
<!-- This is the 'accordion' div -->
<div id="accordion" style="height:800px;">
   <h3>Title...</h3>
   ...
$(document).ready(function() {

  var object = $("#accordion");
  alert("object: "  + object.accordion);

  $("#accordion").accordion({ collapsible: true, active: 'false', autoHeight: false });
  $("#banner").fadeIn(1000);

  alert("Done");
});
使用此
警报(“对象:+object.accordio”)显示
对象:未定义
并在下一行爆炸

这是我的
servlet context.xml
文件

<mvc:resources mapping="/cv/**" location="/cv/" />
<mvc:resources mapping="/wow/**" location="/wow/" />
<mvc:resources mapping="/css/**" location="/css/" />
<mvc:resources mapping="/imgs/**" location="/imgs/" />
<mvc:resources mapping="/js/**" location="/js/" />
<mvc:resources mapping="/inc/**" location="/inc/" />
<mvc:resources mapping="/article-imgs/**" location="/article-imgs/" />

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
  <property name="prefix" value="/WEB-INF/views/"/>
  <property name="suffix" value=".jsp"/>
</bean>

Firebug显示加载任何jquery文件都没有问题。我可以在SpringMVC之外重新创建正确的行为,所以问题一定与Spring/Java有关?!?但我不知道是什么。Firebug报告的唯一错误是
$(…)。accordion不是一个函数
,但一切都是像jquery ui accordion示例一样设置的

顺便说一句,在过去的3个小时里,我在互联网上搜索发现了类似的问题,这些问题都是由打字错误修复的。这不是打字错误。关于jquery UI和Spring MVC,我找不到类似的东西。


<script type="text/javascript" src="<c:url value="js/jquery-ui-1.9.2.js">"></script>
在某些方面是不正确的

  • 您可以使用jquery函数吗
  • 只是jQueryUI函数不起作用吗
  • 您是否自定义了jQueryUI下载,但没有包括accordion
  • 浏览器调试器中是否有404
  • 您是否正在打开一个弹出窗口,该弹出窗口将用其他内容覆盖jQuery对象
另外,使用jQuery lib文件的cdn托管版本可能更好。以下是最新版本,适用于手风琴

<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js' type='text/javascript'></script>

已解决! 问题是我通过以下方式导入了一些内容:

<jsp:include page="../includes/index_page_intro_txt.jsp" />

这个JSP文件正在重新导入jquery。拿出这个,一切都很好

特别感谢@nimsky作为一个发声板,让我继续前进

任何人都不可能用上面的信息解决这个问题。让你们都知道我是如何解决的:

我首先从文件中删除除库导入、ready语句和accordio div块之外的所有内容。然后它成功了。所以我慢慢地把所有的东西都加回去,直到它停止工作,然后调查原因


一开始就应该这么做-呸

“这不是一个打字错误”你的设置不必要地设置在那里…有没有可能你构建/下载了一个自定义的UI构建,而没有将
accordion
作为小部件之一?尝试了所有这些。仍然不起作用。不需要
/
,因为
c:url
会为您将其放在那里。它使用MVC完成路径填充。@AdamDavies您已经用jquery ui的cdn hsoted版本尝试过了,但它也不起作用?我不敢苟同。我的编辑显示了一个workign版本,该版本获得了最新发布的jquery uiOK,并使用
进行了清理和编译。还是不为我工作。它在原始html中运行良好,但在SpringMVC中则不行。你是在Spring容器中运行的吗?Spring与此无关。您在html文档中使用了一个托管在google服务器上的js文件(由tomcat/glassfish从jsp文件创建)。我的要点问题的答案是什么?如果它仍然不工作,您必须有一个从yr服务器到cdn的连接问题,因为jquer js文件肯定与accordion一起工作,或者您正在打开一个弹出窗口,该弹出窗口将用一个不工作的对象覆盖jquer对象;不包括手风琴