jQuery検証を使用してIPアドレスを検証するための優れた解決策を見つけるのには苦労しています。 IPアドレスとサブネットマスクを取るサーバー側の方法がありますが、有効かどうかはわかりませんが、WebページにはIPアドレスサブネットマスクコンボを入力する2つの入力があります。マスク用の選択入力によるIPアドレスの検証
<input id="NetworkAddress" class="required" name="NetworkAddress" type="text" value="" />
<select class="required" id="NetworkMask" name="NetworkMask">
<option value=""></option>
<option value="255.255.255.254">31</option>
<option value="255.255.255.252">30</option>
....snip...
</select>
これら両方の入力に1つの検証ルールを割り当てる方法はありますか?ネットワークアドレスを入力して無効なネットワークマスクを選択した場合、ユーザはいずれかの入力を変更してアドレスを修正できる可能性があるためです。例えば
:
あなたは'10で入力した場合.0.1.0' と選択 『ドロップダウンから』 23のことは/ 23ネットワークのための有効なネットワークアドレスではありませんので、あなたは、無効なアドレスを取得します。ユーザはネットワークアドレスを'10 .0.0.0 'に変更するか、またはマスクを' 24 'に変更することができ、有効なサブネットマスクを持つ有効なネットワークアドレスであるため、検証が真となります。ただし、エラーの1つのみがフォームから消去されます。
私は各入力に同じリモート機能を割り当てることができますが、変更すると有効なクラスを変更するものだけを提供します。したがって、ユーザーがテキストを変更するだけでイベントがクライアント側の 'onchange'メソッドを起動してフォームを再度検証する必要があるかもしれません。
もう一度、事前に感謝します。
あなたの検証コードを表示できますか? – Luke
私はAsp.net MVC 3に含まれている[リモート]属性を使用しています。そして、入力がサーバー側で有効であることを確認しますが、クライアント側には良い解決策を見つけるのに苦労しています。 –