0

ユーザーが承認を送信できるようにする承認フォームをユーザーに提供する消費者向け Web サイトがありますが、特定の選択と送信された以前の選択の組み合わせに基づいて、フォーム番号の送信を制限したいと考えています。現在、ユーザーは承認後も常にフォームにアクセスできるため、承認後に送信を停止したいと考えています。

次の 3 つの選択肢があります。

セット 1 [最初は初期オプション。他のセットは表示されません。]

承認する (ラジオ ボタン)

不承認(ラジオボタン)

セット 2 [このセットは、セット 1 の選択に依存します。セット 1 の [不承認] が選択されている場合は、このセットが表示されます。それ以外の場合は非表示になります。]

リビジョン (ラジオ ボタン)

訂正(ラジオボタン)

セット 3 [このセットは、セット 2 の選択に依存します (もちろん、セット 2 が表示されます)。セット 1 から「改訂」または「訂正」が選択された場合、セット 2 からの対応する選択に基づいて、「改訂テキスト」または「訂正テキスト」のいずれかを表示します。]

リビジョン テキスト (テキストエリア)

訂正文(テキストエリア)

セット 2 はセット 1 に依存し、セット 3 はセット 2 の選択に依存します。

わかりました、これらは選択に基づいて私が望む提出の合計です:

  • ユーザーが最初に承認した場合は、合計送信数を動的に 1 に設定します。フォームは次回送信されず、現在の送信が 1 としてカウントされます。

  • ユーザーが...最初に不承認になった場合、合計送信数を動的に 2 に設定します。現在の提出を 1 としてカウントし、あと 1 つの提出を残します。

  • ユーザーが...最初に承認してから不承認にした場合、合計送信数を動的に 3 に設定します。現在の提出を 1 としてカウントし、あと 1 つの提出を残します。

  • ユーザーが...最初に不承認になり、次に承認した場合、合計送信数を動的に 2 に設定します。現在の提出を 1 としてカウントし、あと 1 つの提出を残します。

  • ユーザーが...最初に不承認になり、次に Revision を選択した場合、リビジョン テキストエリアを表示し合計送信数を動的に 2 に設定します。現在の提出を 1 としてカウントし、あと 1 つの提出を残します。

  • ユーザーが...最初に不承認になり、次に Correction を選択した場合、修正テキストエリアを表示し合計送信数を動的に 2 に設定します。現在の提出を 1 としてカウントし、あと 1 つの提出を残します。

これは、送信制限に対して私が望む一般的なパターンです。基本的に、ユーザーが承認すると、現在の送信後にフォームを送信できなくなります。ユーザーが不承認の場合、追加の送信は 2 回のみ許可されます。私はそれを完全には解決していませんが、いくつかの提案と専門家からの助けを得たいと思っています.

考慮すべきもう 1 つのことは、ユーザーが JavaScript を無効にし、Cookie をオフにしている場合 (特定のソリューションで Cookie が必要な場合) の代替手段です。

4

1 に答える 1

1

「no javascript」に対処するには、スクリプトのサポートなしでサイトを機能させる必要があります。それは常に良い第一歩です。クライアントを制御できないため、すべての検証とロジックをサーバーに複製する必要があります。

スクリプトなしで動作するページを作成したら、クライアントをスクリプト化して (たとえば、AJAX で送信することによって)、より機能的または効率的なユーザー インターフェイスを提供できます。

于 2011-11-18T00:21:16.160 に答える