2013-04-08 46 views
1

我是JSP,外部的jquery文件在春季MVC中不工作?

<%@ page language="java" contentType="text/html; charset=UTF-8" 
    pageEncoding="UTF-8"%> 
<%-- <%@include file="include.jsp"%> --%> 

<%@ taglib prefix="form" uri="../tld/spring-form.tld" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
    <script type="text/javascript" src="/jquery/jquery-1.9.1.js"></script> 
    <script type="text/javascript" src="/jquery/hello.js"></script> 

</head> 
<body> 
<%out.println("Hello") ;%> 
<form:form commandName="person"> 
     Select A or B : 
     <form:input path="option" id="option" /> 
     <input type="button" value="Ajax Submit" onclick="hello();"> 

     <p id = "result"></p> 

</form:form> 
</body> 
</html> 

out.println("Hello")打印在瀏覽器和形式也displayed.Only外部jQuery是沒有工作做的JavaScript調用。

我的調度員的Servlet會,

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

我的外部hello.js包含,

function hello(){ 
    alert("Hello 99"); 
    var val = $("#option").val(); 
    alert("Option : "+val); 
} 

我的項目結構,

enter image description here

當我點擊按鈕我在控制檯

中得到這個
Apr 8, 2013 9:03:08 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound 
WARNING: No mapping found for HTTP request with URI [/SampleChat/jquery/hello.js] in DispatcherServlet with name 'dispatcher' 
Apr 8, 2013 9:03:09 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound 
WARNING: No mapping found for HTTP request with URI [/SampleChat/jquery/jquery-1.9.1.js] in DispatcherServlet with name 'dispatcher' 

我需要調用JavaScript函數來獲取警報。

好的答案是肯定讚賞的。

+0

顯示我沒有看到你的JSP任何'' Givi 2013-04-08 15:31:51

+0

我添加了外部腳本。請參閱'和 '' – 2013-04-08 15:32:35

回答

0

你在哪裏madeAjaxCall()在js文件中?

我認爲你正在嘗試做這個

<input type="button" value="Ajax Submit" onclick="hello();"> 

你的代碼看起來不錯。

+0

對不起,錯誤地編碼和改變,但仍然不工作 – 2013-04-08 15:38:25

+0

你能看到我的項目結構嗎? – 2013-04-08 15:40:27

+0

添加$(document).ready(function(){alert(「test」)}) ;在你的js文件中,如果alert alert你會知道js是包含在你的jsp中的 – commit 2013-04-08 15:42:28

0

檢查,如果這能幫助你(把它放在你的調度XML):

<mvc:resources location="jquery/**" mapping="jquery/**" /> 
0

採用c標記庫

<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core_rt'%> 

和腳本標記如下

<script type="text/javascript" src='<c:url value="/jquery/jquery-1.9.1.js"></c:url>'></script> 
<script type="text/javascript" src='<c:url value="/jquery/hello.js"></c:url>'></script> 

嘗試檢查你是否已經配置你的調度servlet到韓DLE使用以下URL模式的所有請求

<servlet-mapping> 
    <servlet-name>dispatcher</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 

,那麼你需要添加由@Dani