2011-01-12 92 views
0

我的JSP页面加载的负荷许多提交按钮,例如JSP - 提交按钮和IF语句

<input type="submit" name="RemoveCustomer" value="Submit"/> 
<input type="submit" name="AddCustomer" value="Submit"/> 

和我的小脚本标签内我有这样的事情

if(request.getParameter("addByName") != null && request.getParameter("addByName").length() > 0) { 
    ... 
} else { 
    if(request.getParameter("removeByName") != null && request.getParameter("removeByName").length() > 0) { 
    ... 
    } else { 
    ... 
    } 

} 

哪里addByName和removeByName是HTML TextFields

显然,我可以单击按钮RemoveCustomer访问removeByName并执行某些操作,但如果addByName TextField不是空的, d顾客。

我想知道的是在我的scriptlet中,我怎么知道提交按钮被按下了什么?

+0

规则#1-不要使用SCRIPTLETS!尝试jstl而不是:) – OckhamsRazor 2011-01-12 11:51:35

回答

1

你可以做request.getParameter(“submitbutton的名字”)。这里提交按钮的名称是RemoveCustomer或AddCustomer。

1

您可以将<div>中的部分放在类或id中,以清楚发生了什么。

这听起来像你的JSP需要一个良好的重构。如果您同意,我有两个建议:

  1. 消除所有脚本代码,只使用JSTL。 JSP仅用于查看;将所有逻辑移出页面。
  2. 逻辑真的属于服务器端的控制器。拥有一个Front View Controller servlet,它接受所有传入流量并将请求委托给专门编写用于处理不同用例的类。
  3. 您可能已经发展到可以从Spring,Wicket等MVC框架中受益的程度。我建议您考虑一下。