2011-06-28 9 views
0

私は、テキストフィールドとドロップダウンがほとんどないフォームを持っています。onLoad()を呼び出すメソッドのJavascript検証

IamがメソッドonLoadを呼び出し、そのメソッドのテキストフィールドとドロップダウンを検証します。

ユーザーは、ドロップダウンからオプションのいずれかを選択する必要があります。

ドロップダウンは空であってはならないので、私はif(empList==" ")のような条件を持っています。空であれば、空でなければ警告がポップアップします。

現実問題は、私がonLoadに与えたように任意のオプションを選択する前に、そのページに入ると警告がポップアップすることです。

どのようにフィールドを検証する必要がありますか? (そのメソッドをonLoadメソッドと強制する必要があります)

+1

は、なぜあなたは別のイベントからそれを呼び出すことはできませんか? –

+0

多分、空のアイテムをドロップダウンから削除するだけでよいので、検証は必要ありません。 – redexp

+0

onloadでは、onchangeのためのeventListenerをフォーム検証関数としてコールバックとともに追加します。 –

答えて

1

selectタグのonchangeイベントのように、検証メソッドを呼び出すと、選択が変更されるとすぐに検証する必要があります。実際

、最善のことは、フォームを送信するために使用さbuttonタグのonclickイベントであなたの検証関数を呼び出す置くことであろう、その場合には、submitにそのタイプを設定しないことを保証する代わりにそれを設定しますbutton、検証を行う前にフォームが自動的に送信されないようにします。すべてがOKであれば

は、その後の検証方法では、その後、手動でこれを行うことによって、フォームを送信:

document.forms["myform"].submit(); 
0

あなたは、フォームの送信にすべての検証を配置する必要があります。

<FORM 
    ACTION="../...jsp" 
    NAME="testform" 
    onSubmit="return validate()" 
    > 
</form> 
0

代わりのobstrusiveポップアップを使用して、あなたはより良いフォームが正しく入力されていない場合は、警告や情報を表示する非同期検証を使用すると思います。

いくつかのフレームワークのプラグインは、ネイティブにそれを行うことができます。例えば、ここを見て:http://docs.jquery.com/Plugins/validation

関連する問題