select的用法

今天用到把select的option變灰,option有個disable屬性,但是在ie中這個屬性好像不好使,
於是在網上找個一個js方法.此方法重寫了select的onfocus和onchange方法.
但是如果把變灰的一個option重新變灰原來的狀態需要如下兩步操作.
optionObject.disabled=true;
optionObject. = "graytext";

變灰的js方法

window.onload = function() {
if (document.getElementsByTagName) {
var s = document.getElementsByTagName("select");
if (s.length > 0) {
window.select_current = new Array();
for (var i=0, select; select = s[i]; i++) {
select.onfocus = function(){ window.select_current[this.id] = this.selectedIndex; }
select.onchange = function(){ restore(this); }
emulate(select);
}
}
}
}
function restore(e) {	
if (e.options[e.selectedIndex].disabled) {
e.selectedIndex = window.select_current[e.id];
}
}

function emulate(e) {
for (var i=0, option; option = e.options[i]; i++) {
if (option.disabled) {
option.style.color = "graytext";
}
else {
option.style.color = "menutext";
}
 }
}

 

另外增加常用

<script type="text/javascript">
window.onload = function() {
if (document.getElementsByTagName) {
var s = document.getElementsByTagName("select");
if (s.length > 0) {
window.select_current = new Array();
for (var i=0, select; select = s[i]; i++) {
select.onfocus = function(){ window.select_current[this.id] = this.selectedIndex; }
select.onchange = function(){ restore(this); }
emulate(select);
}
}
}
}

function restore(e) {
if (e.options[e.selectedIndex].disabled) {
e.selectedIndex = window.select_current[e.id];
}
}

function emulate(e) {
for (var i=0, option; option = e.options[i]; i++) {
if (option.disabled) {
option.style.color = "graytext";
}
else {
option.style.color = "menutext";
}
 }
}

</script>的關於select的方法
1.獲得select數組
var selectArray= new Array();
selectArray= document.getElementById('selectID');
2.獲得選中的option的值和option之間的text
var selectIndex = document.getElementById('selectID').selectedIndex;
var value = document.getElementById('selectID').options[selectIndex].value;
var selectText = document.getElementById('selectID').options[selectIndex].text;

3.增加一個option
var y=document.createElement('option');
y.text='增加的option'
var x=document.getElementById("selectID");
try
{
x.add(y,null); // standards compliant
}
catch(ex)
{
x.add(y); // IE only
}
4.刪除選中的option
var x=document.getElementById("selectID")
x.remove(x.selectedIndex)


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章