我有点 CGI Perl 的新手,并且正在开发一个使用“模式”和“动作”变量来确定加载哪些页面的 Web 应用程序。
$mode = param('mode');
$action = param('action');
if ($mode eq 'page1') {
if ($action 'eq') {
&performAction;
}
displayPage1;
}
elsif ($mode eq 'page2') {
&displayPage2
}
在开发过程中,在表单提交后尝试导航到不同的模式/操作时,我一直无法找出设置这些变量的最佳方法。
在某些情况下,在表单中添加隐藏值会起作用
hidden(-name=>'action',-value=>'save')
但有时它不会。在后者的情况下,将 param('action',"save") 放在表单之前将在提交表单时更改操作。 我无法弄清楚为什么会发生这种情况,是否有影响我不知道的这两个变量的因素?
我现在需要做的是在同一个表单上有两个按钮,一个将设置保存表单数据的操作,另一个将保存表单数据但导航到具有该表单数据的另一个模式/页面。
如果有人至少能指出我应该研究的正确方向,我将不胜感激。