2011-07-01 7 views
0

이 상자의 id는 1에서 20까지입니다.이 상자는 PHP for 루프에서 만들어집니다. 이 텍스트 상자가 비어 있으면 어떻게 javascript를 사용하여 확인할 수 있습니까? 각 상자에 오류가 발생합니다.텍스트 상자를 반복합니다.

foreach(i = 0, i<20, i++) 
{ 
<input type = "Text" id="q_i"> 
} 
+0

이 많은 것을한다 반복 할 모든 텍스트 상자에 대해 동일한 각 텍스트 상자에 클래스 속성을두면 더 쉽습니다. – JohnFx

+0

나는 내 응답을 업데이트했다. 이전에는 멋진 메시지가 아닌 여러 메시지를 추가했다. – titus

답변

1

jQuery를 사용 하시겠습니까? (쉬울 것 jQuery를 사용하여) jQuery를하지 않고

$('[id^="q_"]').each(function(){if ($(this).val() == '') alert("Your Message Here");}); 
+0

감사 메이트 ... 나는 너와 titus ode : $ (this) .before ("missing text")를 결합하여 작동한다. 매력처럼. 고마워요. – ken

0

을 : 다른 입력이있는 경우

$('input[type=text]').each(function(){if ($(this).val() == '') alert("Your Message Here");}); 

또는, 당신은 처리하지 않으려는

foreach(i = 0, i<20, i++) 
{ 
    if (document.getElementById('q_' + i).length == 0) { 
    alert('box ' + i + 'is empty!'); 
    } 
} 
+0

이 의사 코드입니까? 'length' 속성이 나타내는 것은 무엇이라고 생각하십니까? –

0
document.getElementsById('q_'+i)[0].value.length > 0 

for 루프에서 대략적으로 수행해야합니다. (프로젝트에 jQuery을 삭제하는 것은 아마 더 좋은 계획을 것입니다하지만)

그런 다음 당신은 클래스를 반복 할 수있다.

foreach(i = 0, i<20, i++) 
{ 
<input type = "Text" id="q_i" class="q"> 
} 

와 자바 스크립트의 예

:

$("q").each(function(index,object){ 
    if(object.value().length <= 0) alert('empty!'); 
}); 
+0

셀렉터에 "." – Michael

0

Here 그것은 당신이 빈 떠날 때 나타 눈에 보이지 않는 오류 메시지를 사용하면 을 위해 무엇을 찾고 할 수있는 기본적인 형태의 검증이다 필드를 클릭합니다. 공백을 허용하지 않습니다. 당신은 여러 번 확인할 수 있으며 을 예상대로 여기 JQuery와 일부 동작 :

$(document).ready(function() { 
       $("button").click(function() 
       { $('span[id^=q_]').addClass("hidden"); 
        $('input[id^=q_]').each(function() 
        {if ($(this).val().replace(/ /g,'') == '') 
         { $("#"+$(this).attr('id')).removeClass("hidden"); 
         } 
       }); 
       }); 
}); 

HTML 부분 :

<style>.hidden{display:none;} 
     .visible{display:block;} 
</style> 
<span id="q_1" class="hidden">Missing text</span> 
<input type = "Text" id="q_1"> 

아주 예쁜하지하지만 작업

관련 문제