繁体   English   中英

从servlet传递参数到javascript函数,在查看数据库时不起作用?

[英]pass parameter from servlet to function javascript , it didn't work when view database?

我有查看servlet的视图,它在数据库中查看用户,在表中查看用户的每一行,我们都具有将该行的单元格更改为文本框的按钮,任何方式::我遇到的问题数据并进行for循环以查看每行内的表,我已经打印了一个更新按钮,并将其附加到javascript函数THE IMPORTANT POINT上以传递此动态Row的ID,在运行代码时没有任何反应表明有问题! !

这是视图servlet的代码

@SuppressWarnings("serial")

公共类View扩展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();
    }

你会打电话给

" <td><input type=button value='Update' onclick()='submitform(this.form,"+i+")'></td>"

哪一个

this.form

调用相同的表单,然后它将操作参数传递给ur servlet,您将从中处理它

req.getParameter("action")

注意:我没有测试它,因为我的JDEVELOPER不起作用:(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM