2017-02-16 1 views
3

필수 속성이 Safari에서 작동하지 않습니다.필요한 입력이 비어 있어도 Safari에서 Onsubmit 함수가 실행 중입니다.

이 문제를 해결하려면 Webshim을 사용하고 있습니다. 양식 태그에을 사용하면 제출할 때 아무런 필수 입력이 없어도 작동한다는 것을 알기 전까지는 완벽하게 작동했습니다. "입력란에이 필드를 입력하십시오"라는 메시지가 나타나지만 어쨌든 onsubmit 함수가 실행됩니다.

다음
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/webshim/1.16.0/dev/polyfiller.js"></script> 
    <script> 
     webshim.activeLang('en'); 
     webshims.polyfill('forms'); 
     webshims.cfg.no$Switch = true; 
    </script> 

당신이 작동 예 :

<form onsubmit="alert('hi')" action="#"> 
    <input placeholder="native input works" required> 
    <input type="submit"> 
</form> 

이 내가 Webshim를 초기화하는 방법입니다. Safari와 Chrome에서 시험해 볼 수 있습니다. 경고 발생은 Chrome이 아닌 사파리로 표시됩니다.

https://jsfiddle.net/3pxsvxxj/

, 나는이 문제를 해결해야 할하시기 바랍니다, 나는 방법을 찾을 수 없습니다.

건배.

+0

당신이 공유 할 수 : - 다운로드 webshim

2 -이 코드를 넣어

1

http://caniuse.com/#search=required 사파리의 '필요'속성을 사용하려면, 당신은 'webshim'를 사용할 수 있습니다 webshim을 초기화하는 코드 부분? – Santi

+0

미안 해요, 산티아고, 그걸 잊어 버렸어. 나는 그것을 포스트에 추가했다. –

답변

0

Safari 브라우저는 here과 같이 required 속성을 지원하지 않습니다.

this 질문을 참조하면 기능을 제공하는 대안이 있습니다.

그리고 당신은 당신이 webshim 사용하는 예를 제공합니다 내가 링크 된 질문에서 this 대답을 참조 webshim를 사용했다 가입일 : 사파리는 "필요"입력을 지원하지 않습니다이 때

을 속성.

<head> 
    <script src="js/jquery.js"></script> 
    <script src="js-webshim/minified/polyfiller.js"></script> 
    <script> 
     webshim.activeLang('en'); 
     webshims.polyfill('forms'); 
     webshims.cfg.no$Switch = true; 
    </script> 
</head> 
+0

안녕하세요. 그렇기 때문에 Webshim을 사용하여 Safari에서 작동하지 않는 "필수"문제를 해결했다고 말한 것입니다. 그러나 내가 포스트에서 설명한 문제는 아닙니다. –

+0

나쁜 소식입니다. 업데이트 된 답변을 참조하십시오. –

+0

예, 이미 내 코드에 모두 나와 있습니다. 나는 그것을 포스트에 추가했다. Webshim은 필자의 "필수"입력 문제를 해결하지만 실행 기능을 중지하지 않습니다. –

관련 문제