2017-12-29 9 views
1

이 양식 select에 대한 내 onchange 함수는 onload를 실행하지만 양식의 선택 항목을 변경하지 않습니다. onload와 onclick을 모두 사용하려고했습니다.자바 스크립트 onchange 함수는 onload를 실행하지만 onchange는 실행하지 않습니다.

나는 디버깅 구현 단계에서만 분명히 작동하고 일단 작동하면 다른 작업을 수행하게됩니다.

HTML :

<select case="sel1" name="Sort1" id="Sort1"> 
    <option value="0">Fred</option> 
    <option value="1">Ginger</option> 
    <option value="2">Judy</option> 
    <option value="3">Gene</option> 
</select> 

자바 스크립트 :

window.onload = function() { 
    document.getElementById('Sort1').onchange = ChgSort(); 
} 

function ChgSort() { 
    alert(document.getElementById('Sort1').value); 
} 

내가 페이지를로드 할 때 나는 0의 현재 선택 값으로 경고 팝업을 얻을하지만 난 클릭 할 때 필드를 선택하고 아무 일도 일어나지 않는 옵션을 변경하십시오.

나는 확신, 희망, 그것은 어리 석고 멍청한 짓이고 난 그냥보고 너무 긴 같은 기능 ...

도움말을 디버깅했습니다!

답변

3

당신이

 document.getElementById('Sort1').onchange = ChgSort(); 

 document.getElementById('Sort1').onchange = ChgSort; 

onchange를가

window.onload = function() { 
 
    document.getElementById('Sort1').onchange = ChgSort; 
 
} 
 

 
function ChgSort() { 
 
    alert(document.getElementById('Sort1').value); 
 
}
<select case="sel1" name="Sort1" id="Sort1"> 
 
    <option value="0">Fred</option> 
 
    <option value="1">Ginger</option> 
 
    <option value="2">Judy</option> 
 
    <option value="3">Gene</option> 
 
</select>
아래의 예에서하지 반환 값보기 기능을해야한다에 줄에 변경해야합니다

+0

가 그렇게 할 때 당신이 그것을 싫어하지 마십시오 작동합니다 ??? 나는 바보 같은 것을 내가 빗나가고 코드를 바라 보지 않았다는 것을 알았다. –

+0

전문가도 실수를 저지를 수 있습니다. 그래서 우리는 실수를 저지르기를 원하며 챔피언으로서 스스로 고칠 수있는 옵션을 가지고 있습니다. D –

0

자바 스크립트가 있습니다

window.onload = function() { 
    document.getElementById('Sort1').onchange = ChgSort(); 
} 

창로드는 window.onchange로 변경해야하며

관련 문제