2012-09-19 2 views
0

http://jsfiddle.net/nXqd/qC2Ya/6/jQuery 유효성 검사 - 각 필드에 대한 오류 메시지 표시

jsfiddle을 살펴보십시오. 두 입력에 잘못된 데이터를 입력하고 제출을 클릭하면 첫 번째 오류 메시지 만 수신합니다. 이제는 양식에 name 속성이 표시된 두 개가 표시되기를 바랍니다.

이 예제에서는 백엔드에서 이러한 값을 쉽게 얻을 수 있도록 같은 이름을 사용합니다. 나는 목록을 반복하고 모든 정보를 얻는다.

답변

2

당신이 잘못을하고 있습니다. 두 필드에 같은 이름을 추가했습니다. 동일한 이름 속성은 그룹의 필드를 결합하는 데 사용됩니다. 클래스 기반 유효성 검사를 사용해야합니다.

+0

실제로 실제로 백엔드에서 정보를 쉽게 얻는 목적으로 같은 이름을 사용합니다. 클래스 기반 사용으로 변경 한 경우 - ($ .each?를 사용하여 내가 틀렸는 지 말해주세요). 런타임에 필드 그룹이 추가되므로 유효성 검증을 바인드해야합니까? (그룹은 6 개의 필드를 가질 수 있습니다) – nXqd

+0

예. 틀렸어. 클래스 기반 검증은 $ .each가 필요하지 않습니다. 그 아주 간단합니다. 유효성 검사 플러그인 데모를 볼 수 있다면. 그 상당히 간단합니다. 동적으로 필드를 추가 한 경우 최상의 선택입니다. –

1

데모http://jsfiddle.net/xr5g6/1/

가 당신의 요구에 맞는 희망 작업. :)

코드

$("form").validate({ 
    rules: { 
     number: {required: true, range: [1,2]}, 
     number2: {required: true, range: [1,2]} 
    } 
}); 

당신은 다른 입력에 대해 서로 다른 name attriburtes를 사용해야합니다

<form name="myForm"> 
<fieldset> 
<legend>My Form</legend> 
    <label for='number'>Number</label> 
    <input name='number'class='required'/> <br /> 
    <label for='number'>Number</label> 
    <input name='number2' class='required'/> 
    <label for='change-range'>Max range</label> 
    <input name='change-range' class='required'/> 
</fieldset> 
<input type="submit"> 
</form> 
​ 
관련 문제