У меня есть два элемента управления Textbox на мой взгляд.
Здесь функция проверки jQuery работает, когда имя - одно слово.
Он не работает, если в имени есть какие-либо точки.
В приведенной ниже функции jQuery, если я использую для проверки идентификатор текстового поля « фамилия », он не разрешает использовать другие ключи, кроме цифр. Но каким-то образом, если я использую идентификатор текстового поля « AddressDetail.ZipCode », чтобы разрешить только цифры, это не вызов. Я должен использовать только AddressDetail.ZipCode, так как он ссылается на дочернюю таблицу.
Вот мой код.
<table>
<tbody>
<tr><td class="Form_Label"><label for="LastName">Last Name</label><em>*</em></td>
<td CssClass="Form_Value"><%= Html.TextBox("lastname", Model.LastName, new { @class = "required", size = "30" })%></td></tr>
<tr><td class="Form_Label"><label for="Zip">Zip</label><em>*</em></td>
<td CssClass="Form_Value"><%= Html.TextBox("AddressDetail.ZipCode", Model.AddressDetail.FirstOrDefault().ZipCode, new { @class = "required zip", minlength = "5"})%></td></tr>
<tr><td colspan="2" align="center"><input type="submit" id="btnUpdProfile" value="Update" /> </td></tr>
Проверка функции JQuery:
<script type="text/javascript">
$(document).ready(function() {
//Disabling all other keys except digits
$('#AddressDetail.ZipCode').live('keypress', function(e) {
var keyPressed;
if ((e.charCode) && (e.keyCode == 0))
keyPressed = e.charCode
else
keyPressed = e.keyCode;
if (keyPressed < 48 || keyPressed > 57) {
return false;
}
return true;
});
});
</script>
</tbody>
</table>