在jquery中combobox多選的不兼容問(wèn)題總結(jié)
更新時(shí)間:2013年12月24日 16:06:47 作者:
最近在IE10中開發(fā)jquery,關(guān)于jquery中combobox多選不能兼容的問(wèn)題,進(jìn)行一些總結(jié),感興趣的朋友可以了解下
最近在IE10中開發(fā)jquery,關(guān)于jquery中combobox多選不能兼容的問(wèn)題,進(jìn)行一些總結(jié)。
當(dāng)給combobox設(shè)置屬性“multiple:true”時(shí),IE10無(wú)法完成多選,其報(bào)錯(cuò)如下:
function _7e8(_7e9,_7ea){
var _7eb=$.data(_7e9,"combobox");
var opts=_7eb.options;
var _7ec=$(_7e9).combo("getValues");
var _7ed=_7ec.indexOf(_7ea+"");//10650行 這里報(bào)錯(cuò)
if(_7ed>=0){
_7ec.splice(_7ed,1);
_7e7(_7e9,_7ec);
也就是在F12中報(bào)不支持indexOf方法,現(xiàn)在對(duì)這種問(wèn)題有兩種解決方案:
1.修改源碼
將以上代碼修改為
<strong>function _7e8(_7e9,_7ea){
var _7eb=$.data(_7e9,"combobox");
var opts=_7eb.options;
var _7ec=$(_7e9).combo("getValues");
var _7ed = (function(arr,str){
str = str + "";
for(var i=0,l=arr.length;i<l;i++){
if(arr[i] == str) return i;
}
return -1;
})(_7ec,_7ea);
if(_7ed >= 0){//修改于 2013-6-25 19:04
_7ec.splice(_7ed,1);
_7e7(_7e9,_7ec);
}</strong>
2.加入indexOf方法
<strong>if(!Array.prototype.indexOf){
Array.prototype.indexOf = function(target){
for(var i=0,l=this.length;i<l;i++){
if(this[i] === target) return i;
}
return -1;
};
}</strong>
其實(shí)我還是蠻推薦第一種方法的,因?yàn)楸容^方便,我就是用的第一種方式。
當(dāng)給combobox設(shè)置屬性“multiple:true”時(shí),IE10無(wú)法完成多選,其報(bào)錯(cuò)如下:
復(fù)制代碼 代碼如下:
function _7e8(_7e9,_7ea){
var _7eb=$.data(_7e9,"combobox");
var opts=_7eb.options;
var _7ec=$(_7e9).combo("getValues");
var _7ed=_7ec.indexOf(_7ea+"");//10650行 這里報(bào)錯(cuò)
if(_7ed>=0){
_7ec.splice(_7ed,1);
_7e7(_7e9,_7ec);
也就是在F12中報(bào)不支持indexOf方法,現(xiàn)在對(duì)這種問(wèn)題有兩種解決方案:
1.修改源碼
將以上代碼修改為
復(fù)制代碼 代碼如下:
<strong>function _7e8(_7e9,_7ea){
var _7eb=$.data(_7e9,"combobox");
var opts=_7eb.options;
var _7ec=$(_7e9).combo("getValues");
var _7ed = (function(arr,str){
str = str + "";
for(var i=0,l=arr.length;i<l;i++){
if(arr[i] == str) return i;
}
return -1;
})(_7ec,_7ea);
if(_7ed >= 0){//修改于 2013-6-25 19:04
_7ec.splice(_7ed,1);
_7e7(_7e9,_7ec);
}</strong>
2.加入indexOf方法
復(fù)制代碼 代碼如下:
<strong>if(!Array.prototype.indexOf){
Array.prototype.indexOf = function(target){
for(var i=0,l=this.length;i<l;i++){
if(this[i] === target) return i;
}
return -1;
};
}</strong>
其實(shí)我還是蠻推薦第一種方法的,因?yàn)楸容^方便,我就是用的第一種方式。
相關(guān)文章
jQuery Mobile漏洞會(huì)有跨站腳本攻擊風(fēng)險(xiǎn)
人們經(jīng)常將跨站腳本攻擊(Cross Site Scripting)縮寫為CSS,但這會(huì)與層疊樣式表(Cascading Style Sheets, CSS)的縮寫混淆。因此有人將跨站腳本攻擊縮寫為XSS。2017-02-02
jQuery+JSON+jPlayer實(shí)現(xiàn)QQ空間音樂(lè)查詢功能示例
本文為大家介紹下jQuery+JSON+jPlayer實(shí)現(xiàn)QQ空間音樂(lè)查詢,具體的實(shí)現(xiàn)過(guò)程感興趣的朋友可以了解下哈,希望對(duì)大家有所幫助2013-06-06
14款經(jīng)典網(wǎng)頁(yè)圖片和文字特效的jQuery插件-前端開發(fā)必備
最近沒(méi)項(xiàng)目做,在網(wǎng)上看到很多網(wǎng)頁(yè)特效,非常漂亮,于是就整理了14款經(jīng)典網(wǎng)頁(yè)圖片和文字特效的jQuery插件,有助于在項(xiàng)目需求中用到,前端開發(fā)必備,大家都來(lái)學(xué)習(xí)下吧2015-08-08
ExtJs動(dòng)態(tài)生成treepanel的Json格式
這篇文章主要介紹了ExtJs動(dòng)態(tài)生成treepanel的Json格式的相關(guān)資料,需要的朋友可以參考下2015-07-07
jquery中append()與appendto()用法分析
這篇文章主要介紹了jquery中append()與appendto()用法分析,以實(shí)例的形式分析了jquery中append()與appendto()的具體語(yǔ)法與詳細(xì)用法,需要的朋友可以參考下2014-11-11
基于Jquery的動(dòng)態(tài)創(chuàng)建DOM元素的代碼
jquery動(dòng)態(tài)創(chuàng)建頁(yè)面元素,mark一下,以備以后查詢時(shí)使用。以創(chuàng)建div和input為例。2010-12-12

