2011-01-28 2 views
0

가정하자 나는이 두 개의 라디오 버튼을 만들고 다음 코드를자바 스크립트와 HTML - 온 클릭

<li id="foli517"  class="  "> 
<label class="desc" id="shippingChoice" for="Field517_0"> 
    Shipping Options 
     </label> 
<div> 
<input id="shippingChoice" name="Field517" type="hidden" value="" /> 
    <span> 
<input id="shipping1"  name="Field517"   type="radio"  class="field radio"   value="$2.00 Shipping Fee"  tabindex="13"      checked="checked"      /> 
<label class="choice" for="Field517_0"  > 
    $2.00 Shipping Fee</label> 
    </span> 
    <span> 
<input id="Field517_1"  name="Field517"   type="radio"  class="field radio"   value="I will pick up the items (free shipping)"  tabindex="14"        /> 
<label class="choice" for="Field517_1"  > 
    I will pick up the items (free shipping)</label> 
    </span> 
    </div> 
</li> 

내가 자바 스크립트 함수가 함께 ID가 "mySpan"와 범위의 내부 HTML을 업데이트하는 onclick을 구현하는 것이 어떻게 두 번째 라디오 버튼을 클릭하면 "FREE"라는 단어가 표시되고 그렇지 않으면 "NOT FREE"가 표시됩니까?

document.getElementById(WHAT GOES HERE).onclick = function() { 
    //what goes here? 
}; 
+1

코드 서식을 개선 할 수 있습니까? 이 같은 –

답변

0
document.getElementById('foli517').onchange = function(e) { 
    var e = e || event; 
    var target = e.target || e.srcElement; 
    var span = document.getElementById('mySpan'); 
    var span2 = document.getElementById('mySpan2'); 

    if (target.type === "radio") { 
     span.innerHTML = (target.id === "Field517_1") ? "FREE" : "NOT FREE"; 
    } 
    if (target.type === "checkbox") { 
     span2.innerHTML = "Is it checked? " + target.checked; 
    } 
}; 

예 :http://jsfiddle.net/pEYnm/2/

+0

이것은 완벽하게 작동했습니다. 체크 박스의 예를 보여 주시겠습니까? 체크 박스가 true 또는 false로 설정되어 있는지 어떻게 알 수 있습니까? (클릭 또는 클릭하지 않음) – CodeGuy

+0

@ reising1 : 예. 1 분 후에 업데이트 할게. – user113716

+0

@ reising1 : 업데이트되었습니다. 체크 된 상태를 얻는 데 사용하는 속성은 단순히'checked'입니다. – user113716

0

나는 onclick = "setSpan ('FREE'); and onclick = "setSpan ('NOT FREE');" 해당 라디오 버튼의 HTML에 다음과 같이 span의 HTML을 설정하는 javascript 함수를 추가하십시오.

function setSpan(text) { 
    document.getElementById('mySpan').innerHTML = text; 
} 
+0

? <입력 ID = "Field517_1"\t \t 이름 = "Field517"\t \t 유형 = "라디오"\t \t 클래스 = "필드 라디오"\t \t 값 = "나는 (무료 배송) 항목을 선택할 것" \t \t tabindex = "14"\t \t \t onclick = "setShippingSpan ('$ 0.00');" \t \t \t \t \t /> – CodeGuy

+0

정확하게. onEvent 핸들러 등을 추가하는 것보다 이것을하는 것이 더 쉽다고 생각합니다. – christophmccann

+0

작동하지 않는 것 같습니다. 내 스팬 ID가 정확한지 확인했습니다. – CodeGuy