2013-06-12 9 views
0

JS에 대한 매우 얕은 이해를 바탕으로 한 또 다른 신참 질문입니다. 나는 (숨어있는 div하여 하나의 HTML에서 만든) 작은 온라인 다단계 형태를 짓고 있어요업데이트 된 변수를 표시하기 위해 document.write를 가져올 수 없습니다.

모든 버튼을 누름는 고정 된 수와 VAR 증가되는 경우 :

JS :

var score = 20; 

function updateScore(){ 
      score = score + 10; 
      result.value = score; 
     } 

점수를 표시하고 싶습니다.

<input type="text" name="result" id="result" value="" size="" readonly>을 사용하면 올바른 값 (30)을 얻습니다.

그러나 <script>document.write(result)</script>을 사용하면 아무 것도 얻지 않고 <script>document.write(score)</script>을 사용하면 원본 var (20)을 얻습니다.

jquery 진행률 표시 줄에 var을 출력 할 때도 같은 문제가 발생합니다.

document.write에 표시되는 업데이트 된 var인지 어떻게 확인할 수 있습니까?

편집 : 전체 JS는

var currentLayer = 'lp'; 
var score = 10; 

function showLayer(lyr){ 
    hideLayer(currentLayer); 
    document.getElementById(lyr).style.visibility = 'visible'; 
    document.getElementById(lyr).style.display = 'block'; 
    currentLayer = lyr; 
} 
function hideLayer(lyr){ 
    document.getElementById(lyr).style.visibility = 'hidden'; 
    document.getElementById(lyr).style.display = 'none' 
} 

function goTo(lyr){ 
    showLayer(lyr); 
    score = score + 10; 
    resultat.value = score; 
} 
function goToMinus(lyr){ 
    showLayer(lyr); 
    score = score - 10; 
    resultat.value = score; 
}  

    $(function() { 
    $("#progressbar").progressbar({ 
     value: score 
     }); 
    }); 
+1

+0

더 많은 코드와 HTML을 표시 할 수 있습니까? 당신이 일을 정확하게하려고하는 방법이 내게 즉시 명백하지 않습니다. –

+0

어떤 도움이된다면 완전한 js를 추가했습니다 ... – dblaursen

답변

0

결과는 HTML 입력 요소이기 때문에 결과를 인쇄하는 것 :

<script>document.write(result.value)</script> 

권리 VAR vlaue 하나가 있다는 것을 확인 "점수를"을 writting 정보 "var score"와 같은 범위에 있습니다.

0

올바른 요소에 액세스하려면 updateScore 함수 내에서 result.value과 반대 인 document.getElementById('result').value을 사용하는 것이 좋습니다.

내가 업데이트되고 setInterval이 결과를 설명하기 위해 당신의 updateScore 초마다 호출 예를 포함했다

,

var score = 20; 

function updateScore(){ 
      score = score + 10;  
      document.getElementById("result").value = score; 
     } 

setInterval(updateScore,1000); 

이것은 다음과 바이올린 수정할 수 있습니다,

http://jsfiddle.net/d3QqN/