2011-05-02 10 views
0

나는 동적으로 값을 얻는 여러 개의 라디오 버튼이 있습니다. 그런 다음 텍스트 상자에 멋지게 표시되도록 값을 캐치하여 추가하는 자바 스크립트가 있습니다. 누군가가 다른 라디오 버튼을 선택하면선택 취소 된 라디오 버튼의 값을 얻으려면 어떻게해야합니까?

는 (기본적으로 전체 값에 대한 값을 가산 계산기 등)

이제, 여전히 그 값하지만 그룹의 마지막 버튼의 값을 감산되지 않는 추가. 그게 내가 값을 뺀 것입니다.

내 양식 값은 다음과 같습니다. "5/55"여기서 55는 내 값으로 사용하는 번호입니다. 업데이트 할 텍스트 필드를 "알림"이라고합니다. 따라서 알림 필드의 값을 새로 선택된 라디오 버튼 값으로 성공적으로 추가하는 것을 볼 수 있습니다. 그룹에서 새 값이 선택되면 어떻게 이전 값을 제거 할 수 있습니까?

<script> 
function eventTrigger (e) { 
    if (! e) 
     e = event; 
    return e.target || e.srcElement; 
} 

function radioClick (e) { 
    var obj = eventTrigger (e); 
    var notify = document.getElementById && 
        document.getElementById ('notify'); 
    if (notify) 
    var partsArray = obj.value.split('/'); 
     notify.value = Number(notify.value) + Number(partsArray[1]); 
    return true; 
} 
</script> 

어떤 도움 주셔서 감사합니다 : 여기

은 내가 사용하고있는 자바 스크립트입니다!

답변

0

간단하게 유지 : 변경 될 때마다 최종 결과를 처음부터 다시 계산하십시오. 이전 값을 빼는 것만으로도 실제로는 매우 복잡해질 수 있으며, 실제로 수행해야 할 복잡한 계산이없는 한 그럴 가치가 없습니다. 따라서 사용자가 선택 항목을 변경할 때마다 현재 선택한 값을 기반으로 합계를 계산하십시오. 끝난.

+0

그러나 라디오 버튼을 클릭 할 때만 값이 스크립트로 전송됩니다. 새 버튼을 선택하면 이미 선택된 버튼의 값을 어떻게 얻을 수 있습니까? 나는 매번 0에서 시작한다면 그렇게 할 필요가있다. – Gigi

+0

논리는 다음과 같아야합니다. 사용자가 선택을하고, 스크립트가 선택한 모든 값을 수집하고, 합계하여 어딘가에 출력합니다. 린스, 반복하십시오. 다른 논리는 계속 진행되고있는 상황과 동기화하기가 어렵습니다. 이 논리를 구현하려면 스크립트를 다시 작성해야 할 것입니다. – deceze

관련 문제