jquery select下拉框操作的一些說(shuō)明
更新時(shí)間:2010年04月02日 22:20:49 作者:
公司網(wǎng)站目前的訪問(wèn)用戶(hù)中使用IE6.0的站50%以上,所以必需兼容IE6.0,使用jquery在IE6.0中設(shè)置下拉框時(shí)會(huì)有以下一些問(wèn)題
復(fù)制代碼 代碼如下:
//==========測(cè)試代碼===============
<head runat="server">
<title>下拉框測(cè)試</title>
<script type="text/javascript" src="/js/jquery/jquery-1.3.js"></script>
<script type="text/javascript">
$(function(){
var $city= $("#ddlCity");
//填充一些數(shù)據(jù)
for(var i=1;i<=10;i++){
$city.append($("<option/>").attr("value",i).text("可以選擇的城市第:" +i));
}
//$city.width("100px");//IE6.0下需要自己調(diào)整下拉框的寬度
var t=6;
//setTimeout("$(\"#ddlCity\").val("+ t +");",1); //IE6下解決一,IE,火狐取值多有問(wèn)題
try{$city.val(6);}catch(e){} //IE6下解決二,select至少有一個(gè)靜態(tài)option,IE取值有問(wèn)題
//$city.val(6);//ie6報(bào)錯(cuò),fireFox,IE8.0正常
alert($city.val());
$("#ddlProvince").val(101);//全部正常
});
</script>
</head>
<body>
<form id="form1" runat="server">
<select id="ddlProvince" name="ddlProvince">
<option value="0">請(qǐng)選擇</option>
<option value="1">北京</option>
<option value="60">重慶</option>
<option value="101">廣東</option>
</select>
<select id="ddlCity" name="ddlCity">
<option value="0">請(qǐng)選擇</option>
</select>
<!-- <option value="0">請(qǐng)選擇</option> 將ddlCity中的全部option清除-->
<asp:Button ID="butSave" runat="server" onclick="butSave_Click" Text="Button" />
</form>
</body>
//==========End 測(cè)試代碼===================
測(cè)試說(shuō)明:
A:靜態(tài)select項(xiàng)目
靜態(tài)select項(xiàng)目(可以通過(guò)服務(wù)器端腳本填充),可以直接使用$("#下拉框id").val(選中的value)進(jìn)行設(shè)置.
設(shè)置后使用$("#下拉框id").val();可以正確獲取其值.
B:有一項(xiàng)靜態(tài)的
包含動(dòng)態(tài)創(chuàng)建立的option時(shí),使用$("#selectId").val()
動(dòng)態(tài)創(chuàng)建的(包含一項(xiàng)靜態(tài)的option如: <option value="0">請(qǐng)選擇</option>),可以通過(guò)
1.setTimeout("$(\"#下拉框id\").val("+value+")",1)設(shè)置.
但是使用setTimeout后,使用$("#下拉框id").val();取值時(shí)則不正確,當(dāng)然通常情況你的代碼上下文保留有value值,
沒(méi)必要通過(guò).val()去取,setTimeout缺點(diǎn)是異步執(zhí)行的,setTimeout執(zhí)行時(shí)的上下文通常不是當(dāng)前函數(shù)域.
2.使用try{$("#下拉框id").val();}catch(e){}來(lái)屏蔽錯(cuò)誤,
這個(gè)在firefox中跟IE6.0中多可以正常運(yùn)行,但是IE6.0取值會(huì)出問(wèn)題.
C:全部動(dòng)態(tài)創(chuàng)建
這種情況下使用try在IE6.0中也無(wú)發(fā)設(shè)置.
另外IE6.0對(duì)動(dòng)態(tài)創(chuàng)建的下拉項(xiàng)目,不能自動(dòng)調(diào)整select寬度,需要手動(dòng)調(diào)整.
相關(guān)文章
jQuery EasyUI框架中的Datagrid數(shù)據(jù)表格組件結(jié)構(gòu)詳解
jQuery EasyUI是一個(gè)旨在輔助HTML5打造更好的Web界面的框架,而其中的Datagrid組件也是非常強(qiáng)大,這里我們就來(lái)看一下jQuery EasyUI框架中的Datagrid數(shù)據(jù)表格組件結(jié)構(gòu)詳解2016-06-06
jquery中關(guān)于bind()方法的使用技巧分享
這篇文章主要給大家分享了jquery中關(guān)于bind()方法的使用技巧,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-03-03
Jquery+Ajax+PHP+MySQL實(shí)現(xiàn)分類(lèi)列表管理(下)
本文將采用Jquery+Ajax+PHP+MySQL來(lái)實(shí)現(xiàn)一個(gè)客戶(hù)分類(lèi)列表的管理,如何利用Ajax和Json技術(shù)讓用戶(hù)操作起來(lái)覺(jué)得更輕松,感興趣的小伙伴們可以參考一下2015-10-10
jQuery實(shí)現(xiàn)簡(jiǎn)單的列表式導(dǎo)航菜單效果代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)簡(jiǎn)單的列表式導(dǎo)航菜單效果代碼,涉及jquery操作鼠標(biāo)事件及頁(yè)面元素樣式動(dòng)態(tài)變換的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
jQuery實(shí)現(xiàn)垂直半透明手風(fēng)琴特效代碼分享
這是一款jquery hover抽屜式導(dǎo)航圖片展開(kāi)收縮切換特效代碼,用戶(hù)還可以自定義對(duì)應(yīng)幻燈片的標(biāo)題與文字說(shuō)明,是一款非常實(shí)用的幻燈片特效源碼。2015-08-08
jquery 正整數(shù)數(shù)字校驗(yàn)正則表達(dá)式
本文主要介紹了jquery正整數(shù)數(shù)字校驗(yàn)正則表達(dá)式的方法。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01

