jquery_jquery의 콤보박스 다중 선택과 관련된 비호환성 문제 요약

WBOY
풀어 주다: 2016-05-16 17:07:20
원래의
1572명이 탐색했습니다.

최근 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;iif(this[i] === target) return i;
}
return -1;
};
}< ;/strong>


사실 첫 번째 방법이 더 편리하기 때문에 추천합니다. 저는 첫 번째 방법을 사용합니다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿