JavaScript-元素的设置值不起作用

JavaScript-元素的设置值不起作用,javascript,dom,Javascript,Dom,我正在编写一段代码,下面附上了它的代码片段(JSP中嵌入的JavaScript),其中rs是SQL查询的结果集。我正在尝试动态地为“编辑”按钮指定一个值。但是当我检查按钮的值时,它的打印结果是空的。我也尝试过使用setAttribute()方法,但结果是一样的。我做错了什么 ... while(rs.next()){ <tr> <td><%=rs.getInt(1) %></td&g

我正在编写一段代码,下面附上了它的代码片段(JSP中嵌入的JavaScript),其中rs是SQL查询的结果集。我正在尝试动态地为“编辑”按钮指定一个值。但是当我检查按钮的值时,它的打印结果是空的。我也尝试过使用setAttribute()方法,但结果是一样的。我做错了什么

...
while(rs.next()){
                <tr>
                    <td><%=rs.getInt(1) %></td>
                    <td><%=rs.getString(2) %></td>
                    <td id="edit"><button type="button" onclick="document.write(5 + 6)">Edit</button></td>
                    <td id="delete"><button type="button" onclick="document.write(5 + 6)">Delete</button></td>
                    <script>
                        var v = "edit".concat("<%=rs.getInt(1)%>");
                        document.getElementById("edit").value = v;
                    </script>
                </tr>
                } 
...
。。。
while(rs.next()){
编辑
删除
var v=“edit”。concat(“”);
document.getElementById(“编辑”).value=v;
} 
...

除非您有理由通过脚本标记执行此操作,否则您可以通过将
属性与其他
rs
值对齐来实现此目的:

...
while(rs.next()){
    <tr>
        <td><%=rs.getInt(1) %></td>
        <td><%=rs.getString(2) %></td>
        <td><button type="button" onclick="document.write(5 + 6)" value="edit<%=rs.getInt(1)%>">Edit</button></td>
        <td id="delete"><button type="button" onclick="document.write(5 + 6)">Delete</button></td>
    </tr>
} 
...
。。。
while(rs.next()){
编辑
删除
} 
...

如果您想使用脚本执行此操作,@kaido的注释应该可以帮助您-将
id=“edit”
移动到
中,但请注意,您还想将其更改为
id=“edit”
,并在服务器代码中添加声明和
索引的增量。或者使用另一个值作为区分符,否则您将得到许多
id=“edit”
按钮,脚本将无法按预期工作。

尝试将id属性设置为edit button而不是td元素

     while(rs.next()){
                <tr>
                    <td><%=rs.getInt(1) %></td>
                    <td><%=rs.getString(2) %></td>
                    <td><button id="edit" type="button" onclick="document.write(5 + 6)">Edit</button></td>
                    <td><button id="delete" type="button" onclick="document.write(5 + 6)">Delete</button></td>
                    <script>
                        var v = "edit".concat("<%=rs.getInt(1)%>");
                        document.getElementById("edit").value = v;
                    </script>
                </tr>
                }
while(rs.next()){
编辑
删除
var v=“edit”。concat(“”);
document.getElementById(“编辑”).value=v;
}

这不是javascript。@NVRM javascript代码嵌入在jsp代码
文档中。getElementById(“edit”)
将返回
元素,该元素带有
id=“edit”
属性,HTMLTableCellElement没有
属性。所谓“赋值”是指添加名为“value”的属性吗到元素?还是别的什么?