Java JSP页面上的加减按钮不是';行不通
我正在编写一个简单的web应用程序来执行计算。我有两个按钮,用于加法和减法,但它们不起作用。我尝试使用Java JSP页面上的加减按钮不是';行不通,java,html,jsp,Java,Html,Jsp,我正在编写一个简单的web应用程序来执行计算。我有两个按钮,用于加法和减法,但它们不起作用。我尝试使用switch语句和if语句,但两者都不起作用。你能帮我理解这个问题吗 这是我的密码 <% String name = (String) session.getAttribute("name"); if (name==null) { name = request.getParameter("name"); if (name!=null){ session.se
switch
语句和if
语句,但两者都不起作用。你能帮我理解这个问题吗
这是我的密码
<%
String name = (String) session.getAttribute("name");
if (name==null) {
name = request.getParameter("name");
if (name!=null){
session.setAttribute("name",name);
}
}
String sum = (String) session.getAttribute("sum");
if (sum==null) {
sum = "0";
session.setAttribute("sum",sum);
}
int isum = Integer.parseInt(sum);
String number = request.getParameter("number");
if (number==null){
number = "0";
}
int inumber = Integer.parseInt(number);
if(request.getParameter("add") != null){
isum += inumber;
session.setAttribute("sum",""+isum);
}
if(request.getParameter("subtract") != null){
isum += inumber;
session.setAttribute("sum",""+isum);
}
%>
<html>
<head>
<title>Adding Machine</title>
</head>
<body>
<form method='get' action='adder.jsp'>
<%
if (name==null) {
%>
<p>
Name: <input type='text' name='name' id='name'>
</p>
<p>
<input type='submit' name='submit' id='submit' value='signin'>
</p>
<%
} else {
%>
<p>Welcome, <%=name%>!</p>
<p>Current sum is: <%=isum%></p>
<p>
Number to add: <input type='text' name='number' id='number' value='add'>
</p>
<p>
<input type='submit' name='submit' id='submit' value='add'>
</p>
<p>
<input type='submit' name='submit' id='submit' value='subtract'>
</p>
<%
}
%>
</form>
</body>
</html>
加法器
姓名:
欢迎
当前金额为:
要添加的编号:
您需要使用id
属性来唯一标识每个输入元素。请注意,有两个元素带有id=“submit”
。我想你是想把id=“add”和id=“subtract”放进去。我想你获取参数的方法不对。
你应该像这样使用:
request.getParameter(“xxx”)
其中xxx是您的参数名,用于获取参数的值
在html示例代码中,它应该是:request.getParameter(“submit”)
不是request.getParameter(“add”)或(“substract”),它们都将返回null,
所以什么也不会发生
我建议您修改两个输入标记的html代码
使用两个不同的名称属性分隔不同的操作:添加/删除,
您的代码中没有两个相同名称(“提交”)的输入标记。似乎您从某个地方复制了一个错误的示例:
request.getParameter()的语法是:
request.getParameter("formParamName");
更多信息请访问:
在这里,您肯定会得到NULL,因为没有名为“add”或“subtract”的参数
将代码更改为
if(request.getParameter("submit") != null){
if(request.getParameter("submit").equals("add"))
isum += inumber;
else if(request.getParameter("submit").equals("subtract"))
isum -= inumber;
session.setAttribute("sum",""+isum);
}
什么不起作用?这个文件名为adder.jsp
?我在互联网上看到了那个视频;格罗迪!是的,当我点击add或subtract时,填充名为adder.jsp。什么都没有发生。哎呀,我的意思是说“name”,而不是“id”,尽管id应该仍然是唯一的。name属性用于参数名称,value用于参数值。非常感谢您的帮助