2016-04-15 64 views
1

我有一个表,显示一些细节,在每一行我从数据库中提取值,我想通过用户开发一个Web应用程序可以直接操纵任何行的内容和点击更新并更新应该更新。获取文本框的值作为表的列的儿童

下面是代码:

var row = parseInt(id); 
    var name = document.getElementById("faculty").rows[row].cells[1]; 
    var type = document.getElementById("faculty").rows[row].cells[3].innerHTML; 
    var pass = document.getElementById("faculty").rows[row].cells[2].innerHTML; 
    var load = document.getElementById("faculty").rows[row].cells[4].innerHTML; 
    var intercom = document.getElementById("faculty").rows[row].cells[5].innerHTML; 
    var f_id = document.getElementById("faculty").rows[row].cells[0].innerHTML; 

这里是表:

<table border="1" style="width:100%" id="faculty"> 
    <tr> 
    <th>ID</th> 
    <th>Namet</th> 
    <th>Password</th> 
    <th>Type</th> 
    <th>Load</th> 
    <th>Intercom</th> 
    <th>Action</th> 
    </tr> 

    <% 
    if (session.getAttribute("facultybean") == null) { 
     response.sendRedirect("index.jsp"); 
    } else { 
     ArrayList fb = (ArrayList) session.getAttribute("facultybean"); 
     int count = fb.size(); 
     for (int i=0 ; i < count; i++) { 
     FacultyBean fb1 = (FacultyBean)fb.get(i); 
    %> 

    <tr> 
     <td> 
     <%=f b1.getId()%> 
     </td> 
     <td> 
     <input type="text" value="<%= fb1.getName() %>" /> 
     </td> 
     <td> 
     <input type="text" value="<%= fb1.getPass()%>" /> 
     </td> 
     <td> 
     <input type="text" value="<%= fb1.getType()%>" /> 
     </td> 
     <td> 
     <input type="text" value="<%= fb1.getLoad()%>" /> 
     </td> 
     <td> 
     <input type="text" value="<%= fb1.getIntercom()%>" /> 
     </td> 

     <td> 
     <input type="button" value="Update" id=" <%= fb1.getId()%> " onClick="update(this.id)" /> 
     </td> 
    </tr> 

    <% 
     } 
    } 
    %> 
</table> 

假设为行1 &第2栏我有文本字段<input type="text" value="value1"/> 和用户值更改为ABCD,但我的js代码仍然会返回<input type="text" value="value1"/>而不是<input type="text" value="abcd"/>

+0

您正在获取不会更改的innerHTML。你想要做的是获得输入字段的值。 document.getElementById(“faculty”)。rows [row] .cells [0] .value – Danmoreng

+0

@ user2415266我需要添加方法? – AnonymousDev

回答

0

您可以dd输入的keyup事件

$("input").keyup(function(e){ 
    var x=String.fromCharCode(e.keyCode); 
    $(this).attr('value',$(this).attr('value')+x); 
}); 
+0

如果我打退格怎么办? –

+0

这只是一个小窍门..你可以检查bakspace按键并为它编写一个函数 – Mohammadreza

+0

@ user3623491这是否适用于特定行的特定列? – AnonymousDev