ホームページ  >  記事  >  バックエンド開発  >  データ入稿に関するご質問

データ入稿に関するご質問

WBOY
WBOYオリジナル
2016-08-18 09:15:401371ブラウズ

提出するデータはinputタグかtextareaタグに入れる必要がありますか?別のラベルに入れたらうまくいかないでしょうか?たとえば、span タグが機能しないのはなぜですか? input や textarea を使用するのが不便な場合はどうすればよいですか?

返信内容:

提出するデータはinputタグかtextareaタグに入れる必要がありますか?別のラベルに入れたらうまくいかないでしょうか?たとえば、span タグが機能しないのはなぜでしょうか。 input や textarea を使用するのが不便な場合はどうすればよいですか?

その後、js を使用してこれらのタグのコンテンツを取得し、それを送信するデータに組み立てて、ajax を通じてバックエンドに送信することも可能です。

単純な HTML フォームの送信は間違いなく機能しますが、js を使用して処理する場合は、js を使用して値を取得できる限り、どこにでも配置できます。 。

フォーム送信

ブラウザがフォームを送信する方法、つまりフォームを送信するときにブラウザが何を行うか。

ブラウザはすべてのフォーム コントロールをサーバーに送信するのではなく、すべての [成功コントロール] を検索し、成功したコントロールのデータのみをサーバーに送信します。

簡単に言うと、成功したコントロールは次のとおりです。フォーム内の各コントロールには name 属性と「現在の値」が必要で、送信されると、それらは name=value の形式で送信されたデータの一部になります。
一部の特殊なケースでは、成功コントロールには次の規定もあります:

  1. コントロールを[無効]状態にすることはできません。つまり、[disabled="disabled"]を指定します。つまり、無効なコントロールは成功したコントロールにはなりません。

  2. フォームに複数の送信ボタンが含まれている場合、ユーザーがクリックした送信ボタンのみが成功したコントロールとみなされます。

  3. チェックボックス コントロールの場合、ユーザーがチェックしたコントロールのみが成功したコントロールとみなされます。

  4. ラジオ ボタンの場合、ユーザーがチェックしたもののみが成功したコントロールとみなされます。

  5. 選択コントロールの場合、選択されたすべてのオプションが成功コントロールとして使用され、名前は選択コントロールによって提供されます。

  6. ファイルアップロードファイルコントロールの場合、選択したファイルが含まれていれば、コントロールは成功します。

さらに、ブラウザはリセット ボタンと OBJECT 要素を考慮しません。

注:

  1. チェックボックスとラジオボタンについては、成功したコントロールとして確認されたが、コントロールに value 属性が指定されていない場合、フォーム送信時に「on​​」が値として使用されます

  2. サーバー側でフォームコントロールの値を読み取れない場合は、上記のルールを満たしているか確認してください。

そのため、

送信時にサーバーに送信されませんform表單提交只能識別上述html類型, 其他類型form


フィッシュ・リーより引用

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。