2016-06-25 86 views
0

這裏是代碼,在控制器類中,我可以獲取「列表」數據,但是在jsp中,我無法獲取它。我只想獲取請求範圍,但 當我使用警報列表,它是空的,我該怎麼辦?jsp無法獲取請求範圍值

function getTableData(){ 
 
     $.ajax({ 
 
      type : "post", 
 
      async : true, 
 
      url : "${pageContext.request.contextPath}/echarts/pageContent.json", 
 
      data : {'IF_BIZNAME':$("#interName option:selected").text(),'APPLICATION_KEY':$("#channel").val(),"pageNo":$("#pageNo").val()}, 
 
      success : function(result) { 
 

 
       } 
 
      }) 
 
    }

<c:forEach var="echartsTable" items="${tableList}"> 
 
     <tr> 
 
      <td>${echartsTable.t }</td> 
 
      <td>${echartsTable.ywl }</td> 
 
      <td>${echartsTable.sbl }</td> 
 
      <td>${echartsTable.sbv }</td> 
 
      <td> 
 
       <a href="#">詳情</a>&nbsp;&nbsp; 
 
      </td> 
 
     </tr> 
 
    </c:forEach>

@RequestMapping("/pageContent.json") 
 
    public void getPageContent(String APPLICATION_KEY, String IF_BIZNAME, 
 
           @RequestParam(value = "pageNo", defaultValue = "1")String pageNo, HttpServletRequest request){ 
 
     List<EchartsTable> echartsTables = interfaceFailInfoService 
 
       .selectPageContent(IF_BIZNAME, APPLICATION_KEY, Integer.parseInt(pageNo)); 
 
     request.setAttribute("tableList",echartsTables); 
 
    }
enter image description here

回答

0

真是一團糟!你做錯了所有你可能做錯的事。

  1. Ajax請求xml,但你需要html。
  2. Ajax請求xml,但成爲json。

不要使用.ajax(,使用.load代替並給出c:forEach周圍的表像「ABC123」的ID。

然後用這個功能來代替:

function getTableData(){ 
    $.post("path",{..:xx}, function(){ 
     $.load(' #abc123'); 
     //  ^the space is important! 
    }); 
} 

這意味着你不需要getPageContent - 方法。

+0

謝謝,但我只是想要請求的路徑,並把數據放入請求作用域,我不想回應任何東西,所以我寫這樣,我編輯我的代碼就像這個函數getTableData(){ $ .post(「path」,{..:xx})$ .reload('#abc123'); // ^空間很重要! }但它不能工作 –

+0

$ .reload()不是一個函數?,螢火蟲說 –

+0

我的意思負載,不會重新加載 –