登録フォームを作成しましたが、フィールドにnull検証を入れようとしています。すべてのフィールドは、次のように1つのテーブル内の場所です。
<table border="0" cellspacing="5" width="100%">
<tr>
<td width="50%" valign="top">
<span id="ctl00_PageBody_lblFname">Prénom</span>
<strong><font color="#FF0000">*</font></strong><br />
<input name="ctl00$PageBody$txtFname" type="text" id="ctl00_PageBody_txtFname" rel="First Name" />
<br />
<span id="ctl00_PageBody_lblLname">Nom</span>
<strong><font color="#FF0000">*</font></strong><br />
<input name="ctl00$PageBody$txtLname" type="text" id="ctl00_PageBody_txtLname" rel="Last Name" />
</td>
</tr>
</table>
jqueryを使用して、すべてのテキストボックスを反復処理するジェネリック関数を作成しようとしています。テキストボックスが空の場合は、フィールド名を示すメッセージが表示されます。
var Msg = "Please provide values for :";
var nullFieldTracked = 'false';
$('input[type="text"], select').each(function () {
if (this.value == '' && this.hasAttribute("rel")) {
nullFieldTracked = 'true';
Msg += '\n - ' + $(this).attr('rel');
}
});
if (nullFieldTracked == 'true') {
alert(Msg);
return false;
}
コードは魅力のように機能します。フィールド名を読み取るために、テキストボックスに「rel」属性を追加しましたが、
要件に変更があり、このWebサイトを多言語で起動する必要があるため、リソースファイルから属性が読み取られ、asp.netは「rel」タグのメタリソースを作成しないので、考えています。最も近いスパンからフィールド名を読み取ることはできますが、追跡することはできません。
親切にJqueryを手伝ってください。
よろしくお願いします。