"戻る"ボタンを扱うダイナミックなフォルム
-
19-09-2019 - |
質問
い形の配列を持つテキスト。のユーザー(javascript)を付加できる任意の数のテキストフィールドの形式です。提出後のバックボタンを押し形表示の分野の原形が描画される(任意の追加テキストフィールドを紛失).何が最良の方法は、"戻る"ボタンを描画するためには状態がユーザが投稿したのですか?そのアイデアも大歓迎アトラクションは時代とともに思っている:
- の形状データにクッキー( 動作しないアカップル その理由には最大のキラーは私にとって では、クッキーを受け付ける設定に限定4Kに サイズ)
- の形式でデータのセッション
- 提出書AJAX、その管理の歴史
のです。うテスト形式自分のウェブサイト http://fishtale.org/formtest/f1.php.またここでは、簡単な形で展示を行い:
<form action="f2.php" method="post">
<input type="text" name="text[]" id="text1"/>
<input type="submit" name="saveaction" value="submit form" />
</form>
<a href="f2.php" id="add_element">Add Form Element</a>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js" ></script>
<script type="text/javascript" >
$('#add_element').click(function (event) {
event.preventDefault();
$('#text1').after('<input type="text" name="text[]" />');
});
</script>
これは、その質問に思っき ニーズに合わせたサービスの"戻る"ボタンを離れ形式のデータ, しかし、この形式の要素を変更します。
解決
まいにprewritten図書館、"この思その問題を解決す。の開始をおためしくださいもったいこのアプローチ:
をご利用 コマンドパターン それぞれの方法の変数を変更する機能を提供するページのUIを加え管理も呼AJAX方法を押して呼び出されたメソッド(Javascriptのテキスト表現)をキューに格納されたサーバー開催するセミナーシリーズです。
後body onLoadが完了すると、利用AJAX法のクエリ、サーバのセッションのためのコマンドキューのページのユーザーです。場合には取得され、
eval
各メンバーのキューに再建のページのUIのと同じ順序は、ユーザてよかったです。
意することで記録しないだけで追加の制御が、削除します。が必要です別々の状態を保有者のためのユーザー入力制御のようにするテキストボックスに入力することも考えられます必要なサーバ側のセッションとAJAXでの方法でアクセス)などです。
他のヒント
どの作成 <input type="hidden">
( name
以外の形式で提出されていない)を保存符号化されたリストの追加やその価値?ながらのブラウザんだ新しく追加された分野に"戻る"で ま 覚えてい価値を隠分野に対して優先的に取られる形をしていきたいと思っています。
以下に例を示しますと保存の分野の資料の搬入、取得しました。
<input type="hidden" id="remembertexts" />
<form action="http://www.google.com/" method="get">
<div id="texts">
<input type="text" name="text[]" value="" />
</div>
<div>
<input type="submit" />
<input type="button" id="addtext" value="+" />
</div>
</form>
<script type="text/javascript">
// Add new field on button press
//
$('#addtext').click(function() {
addInput('');
});
function addInput(text) {
$('#texts input').eq(0).clone().val(text).appendTo('#texts');
};
// Store dynamic values in hidden field on leaving
//
$(window).bind('beforeunload', function() {
var vals= [];
$('#texts input').each(function() {
vals.push(encodeURIComponent(this.value));
});
$('#remembertexts').val(vals.join(';'));
});
// Retrieve dynamic values on returning to page
//
$(function() {
var extratexts= $('#remembertexts').val().split(';').slice(1);
$.each(extratexts, function() {
addInput(decodeURIComponent(this));
});
});
</script>
注記:
利用できる
form.onsubmit
の代わりにwindow.onbeforeunload
た場合のみ必要ですから、必ず覚えてい値を提出してください。onunload
など一部のブラウザーで保存した旧形前の値とするものではありません。Firefoxでの位置の入力が重要になります。何らかの理由だけで、動的に付加の分野で、Firefoxが混乱している入力いくことになりますが、失敗を覚えています。
この例では動作しないでオペラ座があります。できる新しい発想でモノを作ることでオペラもいます。オペラの呼び出し荷重およびアンロードイベントが矛盾してもおonsubmitではなく、または設定を隠し、ポーリング間隔の違いによるものなのか、それとも.悪化、オペラを覚えて以前のフォルム-フィールド値で、実際になに詰めてま 後 onloadは、火力発!この原因の多くは、多くのフォルム-スクリプティングです。作業ができるように小さなタイムアウトにonloadるまでお待ちフォームの値をいれば必要なオペラに対応しています。
良いブラウザについての作業を完全な なし.
Firefox1.5の使用メモリキャッシュウェブページに、JavaScript、単一ブラウザのセッション。行く前後としたページを必要としないページの読み込み、JavaScriptの状態が保存されます。 源
これは対応して オペラ や WebKit ます。しかしDOMキャッシュにはならではのこだわりのルール:
- 使用しない
onunload
,onbeforeunload
. 使用しない
Cache-control: no-store
またはmust-revalidate
.
PHPで設定しなおしてくださいsession.cache_limiter
からpatently_ridiculous
いと思うのは、呪文でnocache
)none
.session_cache_limiter('none');
- 残念ながらHTTPSものです。
ない場合力をブラウザで再読み込み、そのページでは優勝しています。い出しを追加できるように、DOMおよびその値の変更に合わせて RFC2616ことを示唆.
しかし, ばんざい場所に貯蔵庫のデータが非常に巧みなハッキング– ウインドウです。名店のメガバイトのデータ.いで送信サーバーで共有です。
またFlashクッキーおよびHTML5 localStorage
が実施されIE8Safari4.
ステップ2:スクリプトを処理する形式の値を入力配列に格納する配列へのセッション変数(またはテキスト/db/どんな希望).
ステップ1:のスクリプトを出力する形式を追加しjavascriptを充填の場合はそのセッション変数に見つかったにも幾つかのセッションです。
き独自のバックボタン上部のウェブページでも見の標準ウェブブラウザの戻るボタンを押します。
ボンネットの下にコードがどの前にした状態とに戻ったがなかった場合は直前の状態にできるか、ブラウザの機能しているのでしょうか。
ブロックの使用のボタンを押します。場合は"戻る"ボタンを押すと、rerender前のページのユーザーに新しい分野を含むいずれか明らかで意味があれば、または非表示になります。そのように、ユーザーを利用することができ戻るボタンは通常、オフセットしたりしている姿は"前のページに表示されます。
にお客様の特定の使用例する必要がありますが、すぐに描画するページのすべての分野に見えるそれぞれのサイズために、価値観がわれる、との見方を示した。
これは良いパターンに従うために他のウィザードタイプのプロセスを提供する配列のフォームのユーザーへのご記入を実施する必要があり戻前ます。
で澄んがご使用になることを このアドバイスを取り込むonUnloadイベント トリガーフォーム送信のうち、全く入力された値)をrerender前のページの"戻る"ものさまざまな取り組みが認められず、値)。唯一のインタビューを受けたことがある利用のAjaxで送入力された値毎のユーザーの分野には、各ページのチェックのサーバー経由でAJAXを取得追加的価値が表示されます。
ここでは追加のページに対しての機能の戻るボタンをアンロードイベントが続く形データ