0

誰かが以下を見て、私のサーバーが私のajaxから何の呼び出しも受けていないことを教えてもらえますか?アラートがポップアップしますが、サーバーには何も表示されませんか?

JSPコード:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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>This is a project to show how to use RESTful</title>
</head>
<body>

<script src="<%=request.getContextPath()%>/js/jquery.js"></script>
<script src="<%=request.getContextPath()%>/js/add.js"></script>


<H1>Add Employee</H1>

<p>
<form name="htmlform">
<table border=1>
    <thead><tr>
        <th>ID</th>
        <th>Name</th>
        <th>Email</th>
    </tr></thead>

    <tr>
        <td><input  type="text" name="ID" maxlength="5" size="3"></td>
        <td><input  type="text" name="Name" maxlength="10" size="10"></td>
        <td><input  type="text" name="Email" maxlength="10" size="10"></td>
    </tr>

</table>
<input type="button" value="Save Employee" onclick="doAjaxPost();" />
<p>
<p>
</form>
[<a href="http://localhost:8080/RESTful/service/employees">List all Employees</a> | <a href="add.jsp">Employee Form Test</a>]


</body>
</html>

ADD.JSコード:

function doAjaxPost() {  

    alert("doAjaxPost called");

       $.ajax({
            contentType : "application/json",
            dataType : 'json',
            type : "PUT",
            url : contexPath + "/service/employee",
            data : $(this).serializeObject(), 

            success : function(data) {
                alert("Thanks for submitting.  \n\n" + response.result);
               // response
            },
            error : function(request, status, error) {
                   alert('Error: ' + e); 
            }
        });
    }  
4

3 に答える 3

2
url : contexPath + "/service/employee",

定義していない可能性はありますcontexPathか?

于 2012-06-08T14:59:30.700 に答える
0

行のスペルを間違えた可能性があります(どこかで定義されているとcontexPath仮定します):contextPath

url : contexPath + "/service/employee",

編集:コンテキストを取得している場所を見ると、これは機能します:

url : "<%=request.getContextPath()%>/service/employee",
于 2012-06-08T15:00:06.067 に答える
0

他の両方の答えは有効です。しかし、私によると、jspページでスクリプトレットを使用するのは悪いことです。

その代わりに、値「/ service/employee」を引数として渡すことができますurl:。適切なマッピングまたはURLがある場合は、このページの現在のURLにこの値を追加するだけで、実行されるためです。

私はこれを私のアプリケーションで使用し、非常にうまく機能しています。

これがお役に立てば幸いです。乾杯。

于 2012-06-09T08:23:14.400 に答える