簡體   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