저는 myVar
이라는 변수가 있습니다. 체크 상자를 클릭하면 값이 변경됩니다. 체크 박스를 클릭하면 해당 값을 1로 표시하는 경고 상자가 나타납니다. 선택을 취소하면 값이 0 인 경고 상자가 다시 표시됩니다.잡히지 않은 ReferenceError 함수가 정의되어 있지 않습니다.
이제 두 가지 질문이 있습니다.
내가
는 내가Submit
을 클릭하여 문서를 제출하려고Uncaught ReferenceError: confirm_submit is not defined
같은 오류가 발생합니다. 왜?- 나는 내가 오류가 발생하지 않지만 그 경우 confirm_submit 기능을 내부에 두 번째 경고 상자가
myVar
에 대한undefined
보여줍니다ready event
밖으로confirm_submit
기능을 넣어합니다. 왜? 함수 내에서myVar
에 액세스 할 수 없습니까?
코드 :
<html>
<head>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.treeTable.js"></script>
<script type="text/javascript">
var myVar;
jQuery(document).ready(function() {
$("#myTable2").treeTable({
expandable: true,
clickableNodeNames: true,
initialState: "expanded",
});
document.getElementById('myVar').addEventListener('click', myVar, false);
function myVar() {
if (document.getElementById('myVar').checked === true) {
myVar = 1;
} else {
myVar = 0;
}
alert(myVar);
}.................
some functions....................
function confirm_submit() {
alert(myVar);
if (confirm('Press OK to confirm')) {
document.myform.myVar.value = myVar;
document.myform.submit();
reload_parent_and_close_window();
}
}
and some more functions.....................
});
</script>
</head>
<body>
<form name="myform" id="myform" action="$action" method="post" onsubmit="return false;">
<input type="checkbox" name="myVar" id="myVar" value="myVar">Text here
</form>
<a href="javascript:confirm_submit()">Submit</a>
</body>
</html>
어쩌면 당신이 (확인 '과 같은 기존의 전역 함수와 동일한 함수 이름을 선택하지 않도록해야합니다)를': 제출 함수 또는'window.confirm'를 호출해야합니까? – fcalderan
내 코드가 다른데 프라이버시 이유 때문에 여기에 이름을 변경했습니다. –