자바스크립트 submit 문의 채택완료
</p>
<p><script src="<?php echo G5_JS_URL;?>/sideview.js"></script>
<script LANGUAGE="JavaScript">
function Title() {document.title="STOP ON 1o0 By Nolan Gendron"; window.setTimeout("Title1();",1);}
function Title1() {document.title="STOP ON 10o By Nolan Gendron"; window.setTimeout("Title();",1);}
counter=0;
ox=0;</p>
<p>function Counter1() {
window.status="Counter: " + counter;
document.game.number.value=counter;
counter++;
Time=window.setTimeout("Counter1();",1);
if (counter==201) {
counter=0;
}
ox=1;
}</p>
<p>function Results() {
if (ox==0) {
alert("정상적인 방법으로 이용해주세요.");
location.href='<?=G5_BBS_URL.'/login.php'?>';
return;
} else {
window.clearTimeout(Time);
document.game.number.value=counter;
document.game.submit();
}
}
</script></p>
<p><font style="font-size: 1.2em;">
<center>
<form name="game" action="attendance_update.php" method="post">
<input type="hidden" name="point" VALUE="<?php echo $game_point;?>">
<input type="hidden" name="rank1" VALUE="<?php echo $rank1;?>">
<input type="hidden" name="rank2" VALUE="<?php echo $rank2;?>">
<input type="hidden" name="rank3" VALUE="<?php echo $rank3;?>">
<input type="hidden" name="rank4" VALUE="<?php echo $rank4;?>">
<input type="hidden" name="range1" VALUE="<?php echo $game_range1;?>">
<input type="hidden" name="range2" VALUE="<?php echo $game_range2;?>">
<input type="hidden" name="range3" VALUE="<?php echo $game_range3;?>">
<input type="hidden" name="minus" VALUE="<?php echo $game_minus;?>">
<img src="모래.gif" style="width: 100px">
<div class="" style="width:300px">
<div><input class="" type="text" border=0 name="number" VALUE="0" onFocus="this.blur();" style="border-width : 10px; border-style : solid; border-color : <?=$c?>; font-size: 5rem;width:170px;text-align:center"></div>
</div>
<img id="Start" src="./img/start.png" onClick="Counter1(); counter=0; " style="width: 70px; margin: 10px 10px">
<input type=image id="Stop" src="./img/stop.png" onClick="Results(); counter=0;" style="width: 70px; margin: 10px 10px"></p>
<p></center>
</form>
위 코드에서 start 버튼 안누르고 stop 눌렀을경우
if (ox==0) { alert("정상적인 방법으로 이용해주세요."); location.href='=G5_BBS_URL.'/login.php'?>'; return;
얼럿띄우고 메인페이지로 빠져 나가는거 같은데
실제로는 얼럿띄운다음 attendance_update.php 으로 넘어갑니다.
else { window.clearTimeout(Time); document.game.number.value=counter; document.game.submit(); }
이부분을 지워도 어김없이 attendance_update.php 으로 넘어갑니다.
ox==0 일경우 얼럿 띄우고 메인으로 빠져 나가려면 어떻게 해야하나요.
답변 6개
</p>
<pre>
<code>let counter=0;
let ox=0;</code></pre>
<p> </p>
<p><code>선언 이렇게 하시고</code></p>
<pre>
<code>function Results() {
alert(ox);
if (ox==0) {
alert("정상적인 방법으로 이용해주세요.");
location.href='<?=G5_BBS_URL.'/login.php'?>';
return;
} else {
window.clearTimeout(Time);
document.game.number.value=counter;
document.game.submit();
}
}</code></pre>
<p> </p>
<p><code>이런식으로 alert 창 띄워서 어떤값이 나오는지 확인해보세요</code></p>
<p>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
자답입니다.
www.phpschool.com 에 문의해보니 "input type=image 는 input type=submit 등 과 같다. " 라고 해서
검색해보니 는 submit 을 무조건 발생시킨다고 합니다. (https://blog.daum.net/happy_virus_factory/51 )
해결방법 : https://blog.opid.kr/146
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
심지어 아래 코드를 다 없애도 서브밋 돼버리네요..
[code]
else {
window.clearTimeout(Time);
document.game.number.value=counter;
document.game.submit();
}
[/code]
댓글을 작성하려면 로그인이 필요합니다.
http://파일.웹.한국">http://파일.웹.한국 <-링크가 클릭하면 제대로 안가네요. 복사해서 주소창에 붙여 넣어야되네요 ㅜㅜ;
질문과 소스를 올려놨습니다.
봐주시면 감사하겠습니다.
댓글을 작성하려면 로그인이 필요합니다.
if (ox < 1) { <= 이렇게 바꿔서 해보세요
값이 정확히 찍힌다면
비교를 못해서 조건문을 안타는거같습니다
위처럼 해도 안된다면
let ox=parseInt(0);
if (ox==0) {
이렇게 형변환을 해서 해보세요
if (ox==0) {
parseInt
답변에 대한 댓글 1개
그런데 ox==0일 경우 메세지 뿌린후 > 확인하면 > attendance_update.php 으로 넘어갑니다.
[code]
else {
window.clearTimeout(Time);
document.game.number.value=counter;
document.game.submit();
}
[code]
if문에 저 위 소스를 (else 부분) 몽땅 지워도 어김없이 attendance_update.php 으로 넘어갑니다.
그게 이상해서 문의 드린거구요..
document.game.submit(); 이부분이 없으면 메세지 뿌리고 서브밋 못하는거 아닌가요?
댓글을 작성하려면 로그인이 필요합니다.
저기에서 포인트는 ox라는 변수가 언제 선언 되었고, 어떻게 초기화 되었고, 어떻게 바뀌고 있는가 인데요...
위의 내용을 생각하면서 지역변수, 전역변수 개념부터 찾아보시죠...
답변에 대한 댓글 2개
이렇게 한게 변수 선언한게 아닌가요?
저 위 소스 상으로 start 한뒤 stop하면 1 아니면 0 으로 ox값은 잘 동작하던데.. 혹시 아니면 알려주시면 감사하겠습니다.
제가 코드를 잘못 파악하고 가이드를 잘못 드렸네요.
ox==0인 부분에 return으로 되어져있는데 저 부분을 return false로 바꿔보세요.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
start 한뒤 stop하면 1 아니면 0