radio 체크 필수가 모바일 (아이폰 사파리)에서 작동 불량이....

radio 체크 필수가 모바일 (아이폰 사파리)에서 작동 불량이....

QA

radio 체크 필수가 모바일 (아이폰 사파리)에서 작동 불량이....

본문

아래와 같이 온라인문의 페이지 코드를 사용합니다.

pc 에서는 문제없이 개인정보취급방침 동의가 정상적으로 작동을 하는데

문제는 아이폰 사파리 브라우저에서는 동의가 작동하지 않는 다는 것입니다.

 

아이폰의 문제인건지, 아니면 맥북의 사파리 브라이저의 문제인지는 모르겠습니다.

맥북이 없으니 테스트가 안되니...

 

이것을 어떻게 변경해야 아이폰(모바일)에서 동의 체크를 강제화 시킬수 있을까요?

 


        <script>
        function input_check() {
          var f = document.founded;  // 본문 form에서의 name 값으로 수정
            var sms_agree = document.getElementsByName("sms_agree1");
            if (!sms_agree[0].checked) {
                alert("개인정보 취급방침을 동의 하셔야 창업상담 신청할 수 있습니다.");
                sms_agree[0].focus();
                return false;
            }
            if(f.sms_name.value == '') {
                alert('이름을 입력해 주십시오.');
                f.sms_name.focus();
                return false;
            }
        }
        </script>
        
<form name="sms_input" method="post" action="sms_input.php" onSubmit="return input_check()">
<input type="text" name="sms_name" value="">
<input type="number" name="sms_tel" value="">
<input type="radio" name="sms_agree1" id="sms_agree1" value="1"> 동의
<input type="radio" name="sms_agree1" id="sms_agree1" value="0"> 동의안함
<input type="submit" value=" 신청하기 ">
</form>

이 질문에 댓글 쓰기 :

답변 4

라디오박스의 문제이거나

javascript의 submit 문제일수 있습니다.

라디오박스의 경우 이 링크를 확인해보시고,

https://stackoverflow.com/questions/30923400/on-ios-safari-using-radio-button-to-toggle-dom-breaks-radios-checkboxes

submit의 문제일 경우

https://jechue.tistory.com/85

혹은

서브밋버튼 어트리뷰트에 

onclick = "void(0)"

를 넣어봐주세요

참조

https://www.codediesel.com/javascript/making-mouseover-event-work-on-an-ipad/

 

아! 라디오박스도 터치이벤트가 일어날테니 라디오 어트리뷰트에도 onclick="void(0)"을 넣어주셔야겟군요..
작성하고나니 왠지 ios터치이벤트엔 다 void(0)을 넣어줬던 기억이 있어서..그문제가 아마 원인이지않을까 싶어용

동의랑 동의안함이랑 id가 똑같아서 그런거 아닐까요~

조언 감사합니다.
테스트 페이지 만들어서 확인해보니 문의드린 코드는 이상이 없네요
실제 적용된 페이지의 어딘가에 js 와 충돌하는것인지 확인해봐야겠습니다.

http://happyjung.com/demo/js/radio.php

테스트 페이지 만들어서 다시 확인해보니 정상작동하네요 ....

실제 적용된 페이지의 다른 코드와 충돌하는것인지 살펴보겠습니다.

 

3라인의   var f = document.founded;  가 오류였습니다.

var f = document.founded;   를

var f = document.sms_input;   로 변경하니 문제가 해결되었습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,539 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT