【问题标题】:How to call doPost() servlet from a hyperlink in jsp如何从 jsp 中的超链接调用 doPost() servlet
【发布时间】:2012-07-02 12:16:22
【问题描述】:

如何从jsp 呼叫servlet?但在这种情况下,我更喜欢使用doPost() 方法而不是doGet()

这是我的代码:

view.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" import="DSIP.*" import="java.util.ArrayList" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>DSIP.View</title>
</head>

<body>
<jsp:useBean id="ipList" scope="application" class="DSIP.IPBeanMapper"/>
<jsp:useBean id="bean" scope="application" class="DSIP.IPBean"/>
<form name="form1" method="post" action="viewS">
    <table width="" border="">
        <tr bgcolor="#0099FF">
            <td width="90"><div align="center">ip</div></td>
            <td width="90"><div align="center">username</div></td>
            <td width="90"><div align="center">password</div></td>
            <td width="90"><div align="center">maxRetry</div></td>
            <td width="90"><div align="center">action</div></td>
        </tr>
        <%
            ArrayList<IPBean> list;
            list = ipList.getIPList();
            for (int i = 0; i < list.size(); i++){
                bean = list.get(i);
        %>
        <tr>
            <td><input name="ip"        type="text" size="15" value="<%=list.get(i).getIp()%>"></td>
            <td><input name="userName"  type="text" size="15" value="<%=bean.getUserName()%>"></td>
            <td><input name="password"  type="text" size="15" value="<%=bean.getPassword()%>"></td>
            <td><input name="maxRetry"  type="text" size="15" value="<%=bean.getMaxRetry()%>"></td>
            <td><a href="/ViewS?action=edit">edit</a> <a href="/ViewS?action=delete">delete</a>

            </td>
        </tr>
        <%
            }
        %>
    </table>
    <input type="submit" name="Submit" value="Submit">

</form>
</body>
</html>

我打算使用链接(编辑和删除)从此页面调用一个 servlet 类(称为ViewS)。当我单击编辑并将值存储到数据库中时,我想使特定行中的某些文件可编辑。

而且,当我点击删除时,我想删除数据库中的记录,也想删除 jsp 中的记录视图。

所以请有人帮助我。

我尝试使用&lt;a href="/ViewS?action=edit"&gt;edit&lt;/a&gt;,但我知道这个电话是doGet()

非常感谢你帮助我。

【问题讨论】:

    标签: java html database jsp servlets


    【解决方案1】:

    您需要在点击链接时调用 javascript 函数,并且您需要从 javascript 提交将生成 HTTP POST 的表单

    function submitMyForm(){
     document.forms["yourFormId"].submit();
    }
    

    或者你可以发一个AJAX call to your servlet

    【讨论】:

      【解决方案2】:

      AJAX 将是您的最佳选择。 从&lt;a&gt;onClick() 方法进行AJAX 调用

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-01-22
        • 1970-01-01
        • 1970-01-01
        • 2013-08-18
        • 2010-12-26
        • 2017-01-05
        • 2015-08-24
        • 2015-12-25
        相关资源
        最近更新 更多