IE10 에서 input 태그에 required 문제...
오늘 window7 에서 IE10 설치해서 운영중인 사이트 글쓰기를 하려고 했더니....
모든 입력값이 필수입력하라고 나오더군요... 확인해보니... 아래의 사항이 문제가 있는듯합니다.
wrest.js
// 초기에 onsubmit을 가로채도록 한다.
function wrestInitialized()
{
for (var i = 0; i < document.forms.length; i++)
{
// onsubmit 이벤트가 있다면 저장해 놓는다.
if (document.forms[i].onsubmit) document.forms[i].oldsubmit = document.forms[i].onsubmit;
document.forms[i].onsubmit = wrestSubmit;
for (var j = 0; j < document.forms[i].elements.length; j++)
{
// 필수 입력일 경우는 * 배경이미지를 준다.
요기 -> if (document.forms[i].elements[j].getAttribute("required") != null)
{
document.forms[i].elements[j].style.backgroundImage = "url("+g4_path+"/js/wrest.gif)";
document.forms[i].elements[j].style.backgroundPosition = "top right";
document.forms[i].elements[j].style.backgroundRepeat = "no-repeat";
}
}
}
}
if (document.forms[i].elements[j].getAttribute("required") != null) IE10에서 이 부분이 문제인것 같더군요...
IE10 에서는 input 태그에 required가 설정되지 않은 것도 document.forms[i].elements[j].getAttribute("required") 이 값이 null 이 아니라.. 그냥 공백을 가져오더군요...
우선 임시방편으로
if (document.forms[i].elements[j].getAttribute("required") != null)
{
요기추가 -> if(document.forms[i].elements[j].getAttribute("required") == "required") {
document.forms[i].elements[j].style.backgroundImage = "url("+g4_path+"/js/wrest.gif)";
document.forms[i].elements[j].style.backgroundPosition = "top right";
document.forms[i].elements[j].style.backgroundRepeat = "no-repeat";
}
}
이렇게 변경하고 게시판 글쓰기 input 태그에 required='required' 라고 값을 지정하고 넘어가긴 했는데... 그누보드 소스 이미 많은 부분에서 그냥 required 라고만 쓴 태그들이 많은지라...
이 부분은 좀 더 ... 괜찮은 해결 방안이 없을지요?
모든 입력값이 필수입력하라고 나오더군요... 확인해보니... 아래의 사항이 문제가 있는듯합니다.
wrest.js
// 초기에 onsubmit을 가로채도록 한다.
function wrestInitialized()
{
for (var i = 0; i < document.forms.length; i++)
{
// onsubmit 이벤트가 있다면 저장해 놓는다.
if (document.forms[i].onsubmit) document.forms[i].oldsubmit = document.forms[i].onsubmit;
document.forms[i].onsubmit = wrestSubmit;
for (var j = 0; j < document.forms[i].elements.length; j++)
{
// 필수 입력일 경우는 * 배경이미지를 준다.
요기 -> if (document.forms[i].elements[j].getAttribute("required") != null)
{
document.forms[i].elements[j].style.backgroundImage = "url("+g4_path+"/js/wrest.gif)";
document.forms[i].elements[j].style.backgroundPosition = "top right";
document.forms[i].elements[j].style.backgroundRepeat = "no-repeat";
}
}
}
}
if (document.forms[i].elements[j].getAttribute("required") != null) IE10에서 이 부분이 문제인것 같더군요...
IE10 에서는 input 태그에 required가 설정되지 않은 것도 document.forms[i].elements[j].getAttribute("required") 이 값이 null 이 아니라.. 그냥 공백을 가져오더군요...
우선 임시방편으로
if (document.forms[i].elements[j].getAttribute("required") != null)
{
요기추가 -> if(document.forms[i].elements[j].getAttribute("required") == "required") {
document.forms[i].elements[j].style.backgroundImage = "url("+g4_path+"/js/wrest.gif)";
document.forms[i].elements[j].style.backgroundPosition = "top right";
document.forms[i].elements[j].style.backgroundRepeat = "no-repeat";
}
}
이렇게 변경하고 게시판 글쓰기 input 태그에 required='required' 라고 값을 지정하고 넘어가긴 했는데... 그누보드 소스 이미 많은 부분에서 그냥 required 라고만 쓴 태그들이 많은지라...
이 부분은 좀 더 ... 괜찮은 해결 방안이 없을지요?
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 2개
뚜렷한 해결책 없나요..