2012-04-23 2 views
0

사용자가 라디오를 클릭하여 변수를 설정 한 다음 두 번째 라디오를 클릭하고 두 번째 변수를 만들기 때문에 라디오를 보려고합니다.변수를 올바르게 잡는 방법을 잘 모르겠습니다.

그런 다음 두 변수를 병합하고 생성 된 변수를 기반으로 아약스를 통해 일부 데이터를로드하려고합니다. 그것을 테스트하기 위해 버튼을 만들었습니다. 변수가 있는지 테스트하기 위해 클릭 할 수는 있지만 표시되지 않습니다. 그래서 내가 올바르게하고 있다고 가정하고 있습니다.

정말 도움을 주셔서 감사합니다. 저는이 문제에 매우 익숙하며 많은 문제가 있습니다. 당신이 당신의 함수의 범위 외부 변수 선언을 코드에서

$("input:radio").change(function() { 

    var selected = $("input:radio:checked"); 

    if (selected.length === 2) { 
     var f = $("input[name='f']:checked").val(); 
     var z = $("input[name='z']:checked").val();   
     alert('we have values ['+z+f+']'); 
    } 

}); 

, 그래서 당신은 당신이 원하는 변수를 가져올 수 없습니다 :

<script type="text/javascript"> 
    $(function(){ 
    $("input:radio[name=f_1]").click(function() { 
     type = $(this).val(); 
    }); 

    $("input:radio[name=f_1a]").click(function() { 
     prod = $(this).val(); 
    }); 

    var type, prod; 
    var JobType = type + prod; 
    $("#alertButton").click(function(){ 
     alert (JobType); 
    }); 
    }); 
</script> 
+0

시도합니다. 예. prod = parseInt ($ (this) .val()); 당신은 + 아마 어쩌면 js 어떤 이유로 두 문자열을 추가하는 데 문제가있는 사용하고 있습니다. –

+0

+1 코드를 게시 해 주셔서 감사합니다. "나타나지 않는다"는 것은 무엇을 의미합니까? 빈 경보가 표시되거나 경보가 전혀 표시되지 않습니까? –

+0

something like ... [this] (http://jsfiddle.net/drinchev/rzSgy/) – drinchev

답변

0

는 다음과 같은 코드를 사용할 수 있습니다.

+0

이 경우 라디오의 값은 2 자 여야합니까? – theFAILcoder

+0

[no] (http://www.w3schools.com/js/js_variables.asp) – drinchev

+0

여러 게시물에 대해 유감스럽게 생각합니다. 다른 게시물을 게시 할 때 동일하다고 생각하지 않았습니다. 변수를 추가하여 페이지의 구조를 엉망으로 만들었습니다. 변수가 내가 원하는 것처럼 작동하지 않는다는 것입니다. – theFAILcoder

0

변수는 함수 내에 있지 않으므로로드 할 때만 비어 있습니다 (비어있는 경우).

상단에 변수를 선언하고 실제로 값을 가질 때 클릭 기능 내부 변수의 결합을 넣어, 그것은 잘 작동 :

$(function(){ 
    var type="", prod="", JobType=""; 

    $("input:radio[name=f_1]").click(function() { 
     type = $(this).val(); 
    }); 

    $("input:radio[name=f_1a]").click(function() { 
     prod = $(this).val(); 
    }); 


    $("#alertButton").click(function(){ 
     JobType = type + prod; 
     alert (JobType); 
    }); 
});​ 

당신이 당신의 변수를 초기 값을주는 경우에 아무것도 (""), 당신은 "정의되지 않은"문제를 피할 수 있습니다.

다음은 변수의 세트 주위에서는 parseInt()를 넣어 FIDDLE

관련 문제