2010-12-13 2 views
0

jquery를 사용하여 입력 상자의 값을 선택하려고합니다. 이 없음 probs하지동적 jquery val()이있는 자바 루프가 선택되지 않았습니다.

$('#id_of_my_input_box_1').val(); 

하지만 몇 그렇게 루프에 넣어하기로 결정해야

============

var config_total_instances = '==some value=' 

for (var x = 1; x <= config_total_instances; x++) { 

    if (isset($('#id_of_my_input_box_'+x).val())) { 

     alert($('#id_of_my_input_box_'+x).val()); 

    } 

} 

을 === =========

폼을 제출하고 10 개의 입력 상자가 있다고 생각되면 해당 입력 상자에 값이 있으면 위의 코드는 값을 경고하지 않습니다. 아래 함수를 사용하여 값을 확인하고 있습니다.

============

function isset(my_variable) { 

    if (my_variable == null || my_variable == '' || my_variable == undefined) 

     return false; 
    else 
     return true; 
} 

============

나는 중요한 뭔가를 놓치고 있습니까 ..? :-(

추가 : 내가 $의 값을하지 않는 이유는 askign 해요 것을 추가 shoudl ('#의 id_of_my_input_box _'+ X) .val() 내 경고 상자

+1

을인가 '== 어떤 값을 ='문자열? –

답변

0

@ Faber75의 답변 확장. 당신은 모든 텍스트 요소에 대한 클래스 이름을 설정하고 다음이 작동하지 않습니다 config_total_instances에 문자열을 할당하는 경우 다음 현재 코드에서이

$("input:text.clsname").each(function(){ 
    if (isset(this.value)) { 
     alert(this.value); 
    } 
}); 

같은 것을 사용할 수 있습니다.

0
을에서 반향

내 메시지에 대한 답을 생각하지 마십시오 간단한 코드의 경우 확인해야 할 텍스트 상자에 클래스를 추가하는 것이 좋습니다 예를 들어 class = " 샘플 "을 사용하면 jquery selector $ (". sample ")을 사용하여 모든 항목을 반환 할 수 있으며 항목 수와 $ (". sample ")을 계산하기 위해 $ (". sample " [0] .val() (또는 이와 비슷한 값)을 사용하여 값을 가져 오거나 테스트하십시오.

건배

0

시도해 보셨습니까? 어쩌면 내가 오해를 해요

if (typeof(my_variable) == 'null' || my_variable == '' || typeof(my_variable) == 'undefined') 
+0

윌 .. 하지만 if 문이 없어도 여전히 동적 요소의 값은 에코되지 않습니다. – Beertastic

+0

코드를 jQuery (문서) .ready()에 넣었습니까? 그렇지 않은 경우 실행시 개체가 존재하지 않으므로 아무 것도 울리지 않습니다. – Mike

0

노력이 대안으로

if (my_variable === null || my_variable == '' || my_variable === undefined) 

을 (= 세 가지가 있습니다),하지만 당신은 단지 <form>의 모든 <input> 년대를 얻을 수 이것이 실현하려는 최종 목표라면 :empty이 아닙니까?

$('form#some_id input:not(:empty)').each(function() { 
    // do something with $(this).val() now that you have 
    // all the non-empty <input> boxes? 
}); 

또는 당신은 단지 사용자가 같은 일부 <input> 빈, 뭔가두면 말하려고하는 경우 :

$('form#some_id').submit(function (e) { 
    if ($(this).find('input[type="radio"]:not(:checked), input[type="text"][value=""], select:not(:selected), textarea:empty').length > 0) { 
     e.preventDefault(); // stops the form from posting, do whatever else you want 
    } 
}); 

http://api.jquery.com/category/selectors/form-selectors/

+0

ID가 동적이어야합니다 $ ('# my_input_name_1') (2, 3, 4 등) 아주 행복하게 비울 수있는 많은 다른 양식 요소가 있지만 동적 인 것들은 분리되어 취급됩니다. 제 질문은 제가 작성한 더 큰 jquery 함수와 관련이 있습니다. 그래서 위의 코드가 왜 값을 반향하지 않는지 알아야합니다. – Beertastic

+0

은 하나의 태그이기 때문에 정의에 의해 비어 있습니다. : 비워야하는 태그에만 비어 있습니다 (예 :

...
). – Mike

+0

Beertastic : 각자 고유 ID가 무엇입니까? 마이크 : 예, 맞습니다 - 고정되어 있습니다. –

관련 문제