从servlet传递参数到函数javascript,查看数据库时不起作用?
问题描述:
我已经查看了servlet里面查看用户的数据库,查看用户在每一行的表格我们有按钮可以将这一行的单元格更改为文本框, 任何一种方式::我遇到的问题当我得到的数据,并作出循环查看每行内的表我有打印更新按钮,并将其附加到JavaScript函数 重要点传递此动态行的ID, 当运行代码什么也没有发生,那有些问题!!!从servlet传递参数到函数javascript,查看数据库时不起作用?
这是视图servlet代码
@SuppressWarnings("serial")
公共类景观延伸的HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.println("<html> <head>");
out.println("<script type='text/javascript'>");
out.println("function show_textBOX(i){");
out.println("alert(\"update these users -- \"+i+ \" -- \")");
out.println(" document.getElementById(i).innerHTML ='f';");
out.println("}");
out.println("</script>");
out.println(" </head> <body>");
PersistenceManager pm = PMF.get().getPersistenceManager();
Query query = pm.newQuery("select from " + User.class.getName());
List<User> list = (List<User>) query.execute();
resp.getWriter().println("<form method='' action='' name='formMY'>");
resp.getWriter()
.println(
" <table border = '1'> <caption><h4>all users </h4></caption> ");
resp.getWriter()
.println(
"</br> <h2> <tr> "
+ "<td> "
+ " USERname "
+ "</td> <td> Salary "
+ " </td> <td>BirthDate "
+ " </td> <td> Modification1 </td> <td> Modification2 </td> </tr></h2>");
int i = 1;
for (User obj : list) {
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
String today = formatter.format(obj.getDate());
resp.getWriter()
.println(
"</br> <tr id='"
+ i
+ "'> <td>"
+ obj.getName()
+ " </td> <td> "
+ obj.getSalary()
+ "</td> "
+ " <td> "
+ today
+ "</td>"
+ " <td>"
+ " <input type=button value='Update' onclick()='show_textBOX("
+ i + ")'>" + " </td> <td>"
+ " <input type=button value='DELETE' >"
+ " </td>" + " </tr>");
i++;
}
resp.getWriter().println("</table> </form>");
resp.getWriter().println("</body> </html> ");
答
你可以使用这个简单的JavaScript函数
function submitform(obj,action){
act = document.getElementById("act");
act.value = action;
obj.submit();
}
和u将其称之为从
" <td><input type=button value='Update' onclick()='submitform(this.form,"+i+")'></td>"
这
this.form
调用相同的形式,然后它会通过操作参数传递给UR的servlet其中U将处理它从
req.getParameter("action")
注:我没有测试它怎么把我没有按JDEVELOPER不工作:(