В форме регистрации пытаюсь, прикрутить валидацию средствами Javascript. Для краткости сократил ее до 1 строки
<form action="" method="post" name="auth_form" id="auth_form">
<fieldset><legend>Обязательные поля</legend>
<table width="525" border="0" cellspacing="5" cellpadding="5">
<tr>
<td align="right"><label for="surname">Фамилия*</label></td>
<td id="td_surname"><input name="surname" type="text" id="surname" size="30" maxlength="20" value="{$_POST['surname']}"/></td>
</tr>
</table>
</fieldset>
</form>
По валидации вопросов не возникает.
С выводом сообщений по резульатам проверки чуть сложнее,
Не получается сделать так, что сообщение выводилось только один раз, сейчас при каждом событии blur добавляется новая запись об ошибке.
$('#surname').blur(function(){
var surname = $('#surname').val();
var msg = surname.search(/[A-Za-zА-Яа-я\d]{3,25}/);
if(msg==-1){
$('#td_surname').prepend('<span class="error">В поле фамилия содержиться ошибка</span><br />');
}
});
После того как ввести в поле 1 символ, и не сколько раз происходит событие blur имеем следующие
<tr>
<td align="right">
<label for="surname">Фамилия*</label>
</td>
<td id="td_surname">
<br>
<input id="surname" type="text" value="" maxlength="20" size="30" name="surname">
<br>
<span class="error">В поле фамилия содержиться ошибка</span>
<br>
<span class="error">В поле фамилия содержиться ошибка</span>
<span class="error">В поле фамилия содержиться ошибка</span>
</t
Нужно чтоб после добавление 1 сообшения об ошибке новые не добавлялись.