2016-09-11 28 views
0

我試圖通過名稱功能搜索頁面。用戶輸入他們希望搜索的部分名稱並單擊搜索。點擊後,函數getUsersByName()被調用。如何從ajax查詢設置播放框架1.4變量

function getUsersByName() 
{ 
    var name = document.getElementById("user-search-input").value; 

    if (name !== "") { 
     var data = new FormData(); 
     data.append('name', name); 

     $.ajax({ 
      type: 'GET', 
      url: '/users/name/' + name, 
      data: null, 
      processData: false, 
      contentType: false, 
      success: function (response) { 
       $('#errorspace').text("ok " + response); 
       var table = document.getElementById("user-list-table"); 
       table.refresh(); 
      }, 
      error: function (errorThrown) { 
       $('#errorspace').text(errorThrown); 
      } 
     }); 
    } 
} 

然後這就要求從address/users/name/{inputname}獲得一個get。這會調用一個方法來查詢數據庫中與名稱%name%匹配的名稱。

public static void getUsersByName(String name) { 

    if (!StringUtils.isEmpty(name)) { 
     String name = "%" + name.toLowerCase() + "%"; 

     List<User> users = 
      User.find("name LIKE :name").setParameter("name", name).fetch(); 
    } 
} 

表被設置爲使用播放標籤列表,並與可變用戶

<table id="user-list-table"> 
    <tbody> 
     #{list users, as: 'user'} 
     <tr> 
      <td>${user.name}</td> 
      <td><button type="btn btn-default">Add</button></td> 
     </tr> 
     #{/ list} 
    </tbody> 
</table> 

填充它有沒有什麼辦法,我可以刷新該表以使用新獲取的列表數據,而不刷新整個頁面?

回答

0

您可以在單獨的代碼片段中創建表格,並在ajax調用上只需刷新該代碼片段,並且通常可以將該代碼片段包含到主頁面