2014-06-09 51 views
0

我有動態地生成一個表,動態改變表內容以JavaScript

<c:forEach var="user" items="${usermap}"> 

<tr> 
<td>${user.getUserName()}</td> 
<td>${user.getIsActive()}</td> 
<td id="status_${user.getUserName()}">${user.getBadLoginAttempts()}</td> 
<c:choose> 
<c:when test="${user.getBadLoginAttempts()=='Active'}"> 
     <td><a href="#" class="btn btn-sm btn-primary unlockBtn" onClick="LockAccount('${user.getUserName()}','${user.getBadLoginAttempts()}')" >Lock</a></td> 
</c:when> 
<c:otherwise> 
    <td><a href="#" class="btn btn-sm btn-primary unlockBtn" onClick="LockAccount('${user.getUserName()}','${user.getBadLoginAttempts()}')">UnLock</a></td> 
</c:otherwise> 
</c:choose> 
</tr> 
/c:forEach> 

表生成細,通過點擊鏈接「鎖定」第三列值應該改變鎖定和鏈路必須改變「解鎖」並所以在JavaScript中副反所以我在Post方法中調用控制器,我面臨的問題是,控制去控制器,並使數據庫更改和寫入文本PrintWriter OBJ現在我想把它放在各自的表格單元格。如何做到這一點,請幫助我。

我的JavaScript,

<script> 

function LockAccount(userName,status){ 
alert(userName); 
/* alert(status); */ 
    $.post('<%=request.getContextPath()%>/controller/UserLockController',{'userName':userName,'status':status}, 
function(data) 
{ 
    document.getElementById("status_"+userName).value=html(data); 
}); 
</script> 

控制器後的功能是這樣的,

protected final void doPost(HttpServletRequest request, 
     HttpServletResponse response) throws ServletException, IOException  { 


    String inputParam = request.getParameter("userName"); 
    System.out.println(inputParam); 
    String status=request.getParameter("status"); 
    System.out.println(status); 
    System.out.println(); 
    PrintWriter out = response.getWriter(); 
    ServiceManager.getHelperService(
      TeacherManagementHelper.class, request, response).lockUser(inputParam); 
    out.println("Locked"); 


} 

所以finaly我想給這樣的

Fiddel

+0

的fiddl工作。我不明白你有什麼問題,但它似乎並沒有涉及到JavaScript。 –

+0

該fiddl是在jQuery中,但我想要改變內容從JavaScript – user3599482

回答

0

試試效果代替

document.getElementById("status_"+userName).value=html(data); 

document.getElementById("status_"+userName).innerHTML(data); 
+0

沒有它不工作 – user3599482