」です。フォームに隠しフィールドを挿入する目的は、フォームを処理するプログラムで使用できる情報を収集または送信することです。"/> 」です。フォームに隠しフィールドを挿入する目的は、フォームを処理するプログラムで使用できる情報を収集または送信することです。">
ホームページ > 記事 > ウェブフロントエンド > HTMLの隠しフィールドとは何ですか
html隠しフィールドとは、ユーザーには表示されない Web ページ内のフォーム要素を指し、構文は「3e784ebd19ff8dc5ef5f2d4feb505168」です。フォームに隠しフィールドを挿入する目的は、フォームを処理するプログラムで使用できる情報を収集または送信することです。
このチュートリアルの動作環境: Windows 7 システム、HTML5 バージョン、Dell G3 コンピューター。
非表示フィールド: Web ページ内のユーザーには表示されないフォーム要素、つまり非表示になっているフォーム要素を指します。
基本構文:
<input type="hidden" name="field_name" value="value">
関数:
隠しフィールドは、ページ上のユーザーには表示されません。フォームに隠しフィールドを挿入する目的は、情報を収集または送信することです。フォームを処理するプログラムによる使用を容易にするため。閲覧者が送信ボタンをクリックしてフォームを送信すると、隠しフィールドの情報もサーバーに送信されます。
フォームを送信するときに、ユーザーの身元を特定するためにセッション キーなどの情報をユーザーに提供する必要がある場合があります。もちろん、これらは Cookie を使用して実装することもできますが、非表示フィールドを使用する方がはるかに簡単です。また、ブラウザーがサポートしていないことやユーザーが Cookie を無効にすることを心配する必要はありません。
フォーム内に複数の送信ボタンがある場合があります。プログラムは、ユーザーが送信するためにどのボタンを押したかをどのように区別できるのでしょうか?隠しフィールドを作成し、各ボタンに onclick="document.form.command.value="xx"" を追加します。その後、データを受信した後、最初にコマンドの値をチェックすることで、どれがどれであるかを知ることができます。ユーザーが送信するボタンをクリックしました。
Web ページには複数のフォームが存在することがあります。複数のフォームを同時に送信できないことはわかっていますが、これらのフォームが相互に作用する場合があります。フォームに隠しフィールドを追加して、それらを接続することができます。 。
Javascript はグローバル変数をサポートしていませんが、場合によってはグローバル変数を使用する必要があります。最初に値を隠しフィールドに保存しておけば、その値は失われません。
別の例として、ボタンを押すと 4 つの小さなウィンドウが表示され、そのうちの 1 つをクリックすると、他の 3 つのウィンドウは自動的に閉じます。ただし、IE は小さなウィンドウの相互呼び出しをサポートしていないため、親ウィンドウに隠しフィールドを書き込むことしかできず、小さなウィンドウは隠しフィールドの値が近いことを確認すると、それ自体を閉じます。
例: 送信ボタンをクリックしたときに数字を 1 増やすには、hidden を使用します。
値は自動的に増加します。htm
コードは次のとおりです。 :
<form action="数值自增.ashx" method="post"> <input type="hidden" name="_viewstate" value="a" /> <input type="hidden" name="_div" value="@n" /> <!-- <input name="txt" type="text" value="@value" />--> <div>@n</div> <input type="submit" value="click" /> </form>
汎用ハンドラーを使用して、自動数値増分を実現します。ashx
コードは次のとおりです:
int n = 0; public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/html"; string path = context.Request.MapPath("数值自增.htm"); string html = System.IO.File.ReadAllText(path); //判断页面是否是第一次加载 string viewstate = context.Request.Form["_viewstate"]; if (!string.IsNullOrEmpty(viewstate)) { //点击按钮 post //获取隐藏域的值 string s = context.Request.Form["_div"]; if (int.TryParse(s, out n)) { n++; html = html.Replace("@n",n.ToString()); } } else { //页面首次加载,给div和div对应的隐藏域赋值 html = html.Replace("@n", n.ToString()); } context.Response.Write(html); }
推奨チュートリアル: "html ビデオ チュートリアル"
以上がHTMLの隠しフィールドとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。