ページに複数のフォームがあり、非表示の入力値に応じて、異なるセクションが呼び出されます。
今私の問題は、フォームの1つに2つの入力ボタンがあり、クリックするボタンに応じて、適切な非表示の入力タイプを送信する必要があるということです。
たとえば、以下のフォームで。[パスワードの生成]ボタンをクリックすると、ターゲット値(非表示の入力フィールドの値)がgenerate_passwordとして必要になります
[パスワードのロック]をクリックすると、ターゲット値をuser_lockedにします。これが私のコードです。
puts "<input type=\"hidden\" name=\"target\" value=\"user_locked\">"
puts "<tr><td colspan='4'> New User request Review</td></tr>"
puts "<tr><td><label for=\"full_name\"> Full Name </label></td>"
puts "<td><input type=\"text\" value =\"$name\" name =\"full_name\" readonly=\"readonly\"></td>"
puts "<tr><td><input type=\"button\" value=\"Generate Password\" onclick=\"if(confirm('Are you user you want to add this user?')){submit()};\"></td>"
puts "<td><input type=\"button\" value=\"Lock User\" onclick=\"if(confirm('Are you user you want to add this user?')){submit()};\"></tr>"
さて基本的に私は隠しフィールドに応じて異なる関数を呼び出しています、
set target ""; catch { set target $CGI_DATA(target) }
switch $target {
"confirm" { set id [UpdateUserData $id] }
"user_locked { DeleteUser $id }
"user_confirmed" { NewUserConfirmed}
"newuser" { NewUserReview }
default { }
}