최근 IE10에서 jquery를 개발하면서 jquery에서 콤보박스 다중 선택의 호환되지 않는 문제에 대해 요약했습니다.
콤보박스에 "multiple:true" 속성을 설정하면 IE10에서 다중 선택을 완료할 수 없으며 오류는 다음과 같습니다.
function _7e8(_7e9,_7ea){
var _7eb=$.data(_7e9,"combobox")
var opts=_7eb.options ;
var _7ec=$(_7e9).combo("getValues");
var _7ed=_7ec.indexOf(_7ea "");//여기 10650행에 오류가 보고되었습니다.
if(_7ed>=0) {
_7ec.splice(_7ed,1);
_7e7(_7e9,_7ec)
indexOf 메서드는 F12에서 지원되지 않습니다. 이제 이 문제에 대한 두 가지 해결 방법이 있습니다. 해결 방법:
1. 소스 코드 수정
위 코드를
으로 수정합니다. 코드 복사 코드는 다음과 같습니다.
function _7e8(_7e9,_7ea){
var _7eb =$.data(_7e9,"combobox");
var opts=_7eb.options
var _7ec=$(_7e9).combo("getValues"); ,str){
str = str "";
for(var i =0,l=arr.length;iif(arr[i] == str) return i;
}
return -1;
})(_7ec ,_7ea)
if(_7ed >= 0){//2013-6-25 19:04에 수정됨 >_7ec.splice(_7ed,1);
_7e9,_7ec)
}
2. 🎜>
코드 복사
코드는 다음과 같습니다. if(!Array.prototype.indexOf){ Array .prototype.indexOf = function(target){ for(var i=0,l =this.length;i
if(this[i] === target) return i; }
return -1;
};
}< ;/strong>
사실 첫 번째 방법이 더 편리하기 때문에 추천합니다. 저는 첫 번째 방법을 사용합니다.
성명:본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.