2013-05-29 2 views
1

Я создал образец весенней программы MVC для отображения имени, имени и возраста ученика. Я хочу ограничить ввод чисел в текстовое поле и строку в зависимости от возраста. Также я хочу сделать поле id обязательным. Я использую JSP для представления.Ограничение целого числа в текстовом файле

Я искал много, но не могу найти подходящее решение Я жду вашей помощи, Заранее спасибо. Это файл JSP

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> 
<html> 
<head> 
<title>Spring MVC Form Handling</title> 
</head> 
<body> 

<h2>Student Information</h2> 

<form:form method="POST" action="addstudent"> 

<table> 
    <tr> 
    <td><form:label path="name" id="tct" >Name</form:label></td> 
    <td><form:input path="name" /></td> 

</tr> 

<tr> 

    <td><form:label path="age">Age</form:label></td> 
    <td><form:input path="age" /></td> 

</tr> 
<tr> 
    <td><form:label path="id">id</form:label> </td> 
    <td><form:input path="id" /></td> 
</tr> 
<tr> 
    <td colspan="2"> 
     <input type="submit" value="Submit"/> 

    </td> 

</tr> 

</table> 

</form:form> 

Это были результатом поиска я нашел

restrict a character to type in a text box

Restricting input to textbox: allowing only numbers and decimal point

http://www.cambiaresearch.com/articles/39/how-can-i-use-javascript-to-allow-only-numbers-to-be-entered-in-a-textbox

Если эта ссылка работает, пожалуйста, помогите мне интегрировать ее с моим JSP-файлом. Я начинаю работать с javascript и HTML.

Заранее спасибо

+0

Какие решения вы нашли? что вы попробовали? посмотрите http://static.springsource.org/spring/docs/3.0.x/reference/validation.html – fGo

+1

Проверка весны-mvc будет работать только после публикации данных на сервер. Вы уверены, что хотите этого? Может быть, валидация должна быть реализована на стороне html/js перед публикацией? – vacuum

+0

Я хотел бы также предложить взглянуть на функции проверки формы HTML5, такие как атрибут 'pattern', где вы можете ограничить ввод данных пользователем без одной отдельной строки JS. –

ответ

0

Для нечисловых полей: Одним из возможных решений является использование функции KeyUp, чтобы заменить все вхождения чисел в текстовом поле при вводе (JQuery используется).

$(".textfield").keyup(function(){ 
    var textfield= $(this).val(); 
    var newtext=textfield.replace(/[0-9]/g, ''); 
    $(this).val(newtext); 

}); 

Для числовых полей только: Вы можете использовать что-то подобное, как описано выше, но заменить regexpression с:

var newtext=textfield.replace(/[A-Za-z$-]/g, ""); 

Для ID: Используйте форму проверки по форме представления. Сначала укажите идентификатор/имя для вашей формы.

$("form").submit(function(){ 
    var idField= $(#idField).val(); 
    if(idField.length > 0){ //form ok 

    }else{ //form not ok. error message 
     alert('error'); 
    } 
}); 

Я действительно не протестировал вышеуказанный код полностью, поэтому любые исправления будут оценены.

Надеюсь, что это поможет

Смежные вопросы