簡體   English   中英

sevlet的jQuery AJAX調用在錨標記中不起作用

[英]jQuery AJAX call to sevlet not working in anchor tag

我是jQuery和Servlet的新手。 正在從事學校項目,現在我陷入了這個問題。

我的proj3.html文件中的左側有一個帶有錨標記的導航欄。

  <ul class="nav nav-list">

          <li class="nav-header">Labels</li>
          <li><a href="" class="labels">Sony</a></li>
          <li><a href="" class="labels">Spinnin</a></li>
          <li><a href="" class="labels">BMG</a></li>
          <li><a href="" class="labels">Ultra</a></li>
      <li><a href="" class="labels">Universal</a></li>

          <li class="nav-header">Genere</li>
          <li><a href="" class="genere">Rock</a></li>
          <li><a href="" class="genere">Alternative Rock</a></li>
          <li><a href="" class="genere">Pop</a></li>
          <li><a href="" class="genere">EDM</a></li>
          <li><a href="" class="genere">Hip-Hop</a></li>
       </ul>

在Javascript里面我有這個

 $('a.labels').on('click',function(e){

        var url = "http://example.edu/servlet/SampleQuery";       
            $.get(url);
        e.preventDefault();
    }

}

在我的servlet SampleQuery.java內部,我從DB讀取並轉發到這樣的JSP

       RequestDispatcher dispatcher = null;
       dispatcher = request.getRequestDispatcher("/jsp/DisplayVendor.jsp"); 
   dispatcher.forward(request, response);

當我單擊任意錨標記$.get ,但未顯示我的JSP頁面。 奇怪的是,如果我檢查螢火蟲的網絡流量,我會看到正在進行的AJAX調用,甚至可以看到DisplayVendor.jsp頁面作為響應。 但是它沒有被顯示。

有人可以指出我是否有任何錯誤。

謝謝

您調用$.get(url) ,但不對響應做任何事情。 更改為

$.get(url, function(data) {
    alert('here is the response data : ' + data);
});

顯示您收到的信息。

例如,要使用AJAX調用返回的HTML更新ID為“ dynamicallyLoadedDiv”的div的內容,請使用

$.get(url, function(data) {
    $('#dynamicallyLoadedDiv').html(data);
});

或簡單地

$('#dynamicallyLoadedDiv').load(url);

閱讀文檔以獲取更多信息。

請注意,如果您的目標是替換整個頁面的內容,那么提出AJAX請求的意義不大。 在這種情況下,請使用簡單的超鏈接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM