如何在点击/提交表单时调用 JSP 方法

how to invoke a jsp method onclick/on form submit

本文关键字:表单 调用 JSP 方法 提交      更新时间:2023-09-26

我有一个包含以下代码的jsp页面:

<script type="text/javascript">
function getWithdrawAmmount()
{
var withdraw=document.forms["WithdrawDeposit"]["AmountToWithdraw"].value;
document.getElementById('hidden').type = withdraw;
}
</script>

<form method="POST" name="WithdrawDeposit" onsubmit="getWithdrawAmmount()">
<table>
<tr><td><input type="text" size=5 name="AmountToWithdraw"></td>
<td><input type="button" value="Withdraw"></td></tr>
</table>
</form>
<input type="hidden" name="hidden" value="">

<% String AmountWithdraw = request.getParameter("hidden");  %>
<%!
public void Withdraw(){     
    int Amount = Integer.parseInt("AmountWithdraw");
Deposit deposit = new Deposit();
deposit.WithdrawMoney(AmountWithdraw);  
} %>

我需要在表单提交时激活 Withdraw() 方法并获取文本输入。JavaScript 保存插入在"隐藏"中的值,我可以稍后访问它。但我不能打电话给:<%提款();%> 来自 JavaScript 内部。

点击按钮后如何调用 Withdraw()?

10 倍

首先,您的代码行有问题

document.getElementById('hidden').type = withdraw;

它正在寻找 id 为 hidden 的元素。不是名字,不是身份证。因此,请向您引用的元素添加一个 id。

其次,您正在设置类型。你不想设置值吗?

所以 HTML 看起来像

<input type="hidden" name="hidden" id="hidden" value="" />

而 JavaScript 将是

document.getElementById('hidden').value = withdraw;

现在,如果要在服务器上调用函数,则需要回发窗体或进行 Ajax 调用。