0

私が取り組んでいるアプリケーションでは、ナビゲーションに変数 $mode と $action を使用しています。例えば:

$mode = param('mode');
$action = param('action');

if ($mode eq 'mode1') {
  if ($action eq 'savedata') {
    &savedata();
  } elsif ($action eq 'showform') {
    &showform(); 
  }
}

通常、変更する必要があるのはアクション パラメータのみで、これはボタンで行うことができます。

$button1 = "<button type='submit' id='saveBenefit' style=\"$button_style\" name='action' class='button1' value='save'>Save</>";
$button2 = "<button type='submit' id='processBenefit' style=\"$button_style\" name='action' class='button1' value='process'>Save And Process</>";

しかし:

ボタン 1 をクリックしたときに、「モード」パラメータを利益として維持し、「アクション」パラメータを「保存」にします。ボタン 2 をクリックすると、モード パラメータが「トランザクション」になり、「アクション パラメータ」が「プロセス」になります。

クリックされたボタンに基づいて、複数のフォーム値 (アクションとモードの両方) を変更するにはどうすればよいですか?

4

1 に答える 1

0

クライアント側のスクリプトを使用しないとできません。しかし、それはばかげているでしょう。ボタンの値に十分な情報を含めるだけです。フォームを変更する必要さえありません。

$mode = 'transaction' if $action eq 'process';
于 2013-01-03T23:36:13.053 に答える