我有一个包含此代码的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保存在'hidden'中插入的值,我可以稍后访问它。 但我不能打电话给:&lt;%Withdraw(); %GT;来自javascript内部。
按钮点击后如何调用Withdraw()?
10倍
答案 0 :(得分:3)
首先,您的代码行有问题
document.getElementById('hidden').type = withdraw;
正在寻找id为隐藏的元素。不是名字,也不是名字。因此,为您引用的元素添加一个id。
其次你要设置一个类型。你不想设置值吗?
所以HTML看起来像
<input type="hidden" name="hidden" id="hidden" value="" />
并且JavaScript将是
document.getElementById('hidden').value = withdraw;
现在,如果要在服务器上调用函数,则需要回发表单或进行Ajax调用。