2010-12-13 17 views
1

私は10の入力テキストボックスを持つフォームを持っていて、それぞれには「姓」、「名」などのデフォルト値があります。私はonblurとonfocusをこれらの要素に使用しました。なぜなら、それぞれのボックスが何であるかを示すテキストボックスの横に説明がなかったからです。サンプルコード:私は同じページにこのフォームを検証するデフォルト値のテキスト入力のフォーム検証

<input type="text" id="o_fname" name="o_fname" value="<?php if (isset($_POST['o_fname'])) echo $_POST['o_fname']; else echo 'First Name'; ?>" tabindex="1" size="36" style="background:#000000;color:#8e8e8e;border-color:#D8D8D8;height:22px;width:200px;" onFocus="if 
(this.value==this.defaultValue) this.value=''; " onBlur="if(this.value=='') this.value=this.defaultValue;"> 

、私は私のjqueryのものを試してみましたが、問題は、テキストボックスには、デフォルト値を持っていたことだったとjqueryのは、何かがボックスと私に入力されたと仮定しました。正しく検証されていませんでした...このページをどのようにして動的に検証して、ユーザーがすべてのフィールドを入力しない限りフォームを送信できないようにするための提案はありますか?

答えて

1

はここで、解決策を見つけ提出を続行それは他の人を支援することです:

http://www.javascript-coder.com/html-form/javascript-form-validation.phtml

そして、フォームフィールドにカスタム検証を行うためのスクリプトを記述し、入力された値がファーストネームであるかどうか、それはチェックします。

0

この値が有効な場合は、デフォルト値のみを使用してください。そうでない場合は、<label>を使用して、フィールドの対象を指定します。これはアクセシビリティのためにも重要です。デフォルト値を使用する

合法的な場所:日付フィールドに

  • 今日の日付 正しい形式で最も 一般的に選択されたオプション
  • チェックボックス/ラジオ・セットの
  • デフォルト選択ボックスの値最も一般的なもの 選択
+0

クライアントがページを正しく見せたいと思うものを変更することはできませんか?クライアントはラベルを必要とせず、フォームが提出される前に検証される必要があるデフォルト値を持つテキストボックスのみが必要でした。フォームが提出されると、フォームの検証のためのスクリプトを書いた。 –

+0

ラベルがない場合は、少なくともコード内で、視覚障がい者から最大508件の訴訟が開かれていることをクライアントに伝えます。あなたは、それをうまくやっていくために、レバレッジとして使うことができます。 – DampeS8N

0

すべてのフィールドとそのrelaを持つjsonオブジェクトを作成するかテッドのデフォルト値やフォームの送信時にデフォルト値に提出した値を比較し、値のいずれも関連するデフォルト値と一致しない場合、javascriptを

varsを作成

+0

フォームが提出された時点で、値がデフォルト値でチェックされる検証を既に作成しました。しかし、私は提出する前に、その場でフォームをチェックするものが欲しかった。 –

関連する問題