4

私は capacha を含むフォームを持っています。capacha が間違って入力された場合、送信後にページは "history.go(-1)" を実行し、capacha 入力を含むすべてのフィールドが画面に戻ります

今、私はそれをクリアするjsを持っています-しかし、今はいくつかの場所でそれが必要なので、htmlフォームに関連する何かで戻った後にフォームフィールドをクリアできるかどうかを知りたいです。

ありがとう

4

4 に答える 4

1

CAPTCHA 画像 (またはそれをロードするページ) を制御するキャッシュを調べてみましたか?

于 2010-03-22T17:47:29.987 に答える
0

「history.go(-1)」と JavaScript をまったく使用するのは悪い考えだと思います。サーバー側でキャプチャを検証する必要があり、レンダリングする必要があるページをサーバー側で選択する必要がありますか? キャプチャまたは次でもう一度。

于 2010-03-13T08:25:42.493 に答える
0

プログラミングを追加する必要があるため、html だけではそれが可能だとは思いません。

onloadドキュメントのイベントで呼び出されるjs関数を持つことができます。

関数は次のようになります。

function resetfields()
{
  $("input[type=text]").val("");
  $("textarea").val(""); // if any textarea
}

また、この関数で ajax を使用して、毎回新しいキャプチャを取得することもできます。

この関数をマスター/ヘッダー ページに配置すると、すべてのページにコピーする必要がなくなります (セレクターをより正確にする必要がある場合があります)。

于 2010-05-13T10:43:07.153 に答える
0

もう 1 つのオプションは、ページにアクセスするたびにフォーム フィールドの名前を変更できることです。名前にタイムスタンプを追加します。そうすれば、ブラウザはそれを自動入力しません。これを考慮して、おそらくバックエンド コードを少し調整する必要があります。

于 2011-11-03T16:35:17.860 に答える