2015-04-20 2 views
0

В моей форме содержатся поля ввода, которые будут проверяться от минимальных и максимальных значений при отправке. Поля ввода будут отображаться на экране с помощью итерации списка.Итерация через список компонентов и проверка данных в javascript

<c:forEach var="Item" items="${listBean.nameList}" varStatus="status"> 
    <input type="number"name="nameList<c:outvalue='[${status.index}]'/>.initialWeight" onchange="checkOnChange(this,'<c:out value='${Item.personId}'/>','<c:out value='${Item.minWeight}'/>','<c:out value='${Item.maxWeight}'/>','<c:out value='[${status.index}]'/>')"> 
     <br><br> 
    <input type="number" name="nameList<c:out value='[${status.index}]'/>.finalWeight" onchange="checkOnChange(this,'<c:out value='${Item.personId}'/>','<c:out value='${Item.minWeight}'/>','<c:out value='${Item.maxWeight}'/>','<c:out value='[${status.index}]'/>')"> 
     <br><br> 
    <input type="text" class="formtext" name="nameList<c:out value='[${status.index}]'/>.Reason" id ="reason<c:out value='[${status.index}]'/>" value="" maxlength="255" > 
     <br><br> 
     <input type="submit" value="submit" id="submit" /> 

</c:forEach> 

Так при подаче формы, у меня есть все введенные пользователем значения, которые будут храниться в компоненте, а также мин/макс values.i нужно проверить форму и запретить пользователю отправку формы, если любое введенное значение не находится в пределах значений min/max.

Так что я немного смущен тем, как это сделать в скрипте Java?

спасибо за ваши предложения и время ..

JSFIDDLE

ответ

1

Я бы сказал получением id

<form id="frmDetails"> 
    <c:forEach var="Item" items="${listBean.nameList}" varStatus="status"> 
     <input type="number"name="nameList<c:outvalue='[${status.index}]'/>.initialWeight" onchange="checkOnChange(this,'<c:out value='${Item.personId}'/>','<c:out value='${Item.minWeight}'/>','<c:out value='${Item.maxWeight}'/>','<c:out value='[${status.index}]'/>')"> 
      <br><br> 
     <input type="number" name="nameList<c:out value='[${status.index}]'/>.finalWeight" onchange="checkOnChange(this,'<c:out value='${Item.personId}'/>','<c:out value='${Item.minWeight}'/>','<c:out value='${Item.maxWeight}'/>','<c:out value='[${status.index}]'/>')"> 
      <br><br> 
     <input type="text" class="formtext" name="nameList<c:out value='[${status.index}]'/>.Reason" id ="reason<c:out value='[${status.index}]'/>" value="" maxlength="255" > 
      <br><br> 
      <input type="submit" value="submit" id="submit" /> 

    </c:forEach> 
</form> 

Ниже будет форма представить функцию

<script type="text/javascript"> 

$("#frmDetails").on("submit",function(e){ 
var valid=true; 
e.preventDefault(); 
var inputs=$(this).children('input'); 
$.each('input',function(index,value){ 
    if($(this).val()=="")//blank validation 
    { 
      valid=false; 
    } 
}); 
if(valid) 
{ 
//post the form 
} 

$("#frmDetails").unbind("submit"); //To prevent the form from getting submitted 
}); 

</script> 
+0

Вы должны использовать ' e.preventDefault() 'только в том случае, если форма недействительна. – marcel

+0

@Guruprasad Rao Спасибо за ваш ответ. Но в моем случае мне нужно передать минимальные и максимальные значения, хранящиеся в компоненте, в функцию jquery, чтобы он мог быть проверен. Но ваш ответ просто проверяет пустые значения – jaggs

+0

На самом деле я нет опыта или лучше сказать, не знаю об этом списке бобов, поэтому я просто дал вам общее представление о том, как вы можете проверить ... :) В любом случае ** [эта ссылка] (http://stackoverflow.com/questions/ 16358112/how-to-get-value-from-listbean-object-in-jquery-using-spring) ** может быть полезно .. :) –

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