Javascript操作DropDownList控件总结

 要操作的DropDownList

<asp:DropDownList ID="DropDownList1" Width="150" runat="server" onchange="ShowJWWA()">
</asp:DropDownList>

javascript代码

var objDdl=document.getElementById("<%=DropDownList1.ClientID %>");

//清空objDdl中的所有项
function(objDdl) {
    objDdl.options.length = 0;
}

//判断objDdl中是否存在value为paramValue的项(ListItem)
function(objDdl, paramValue)
{
    var isExist = false;

    for (var i = 0; i < objDdl.options.length; i++) {
        if (objDdl.options[i].value == paramValue) {
            isExist = true;
            break;
        }
    }
    
    return isExist;
}

//判断objDdl中是否存在text为paramValue的项(ListItem)
 function(objDdl, paramText) {
    var isExist = false;

    for (var i = 0; i < objDdl.options.length; i++) {
        if (objDdl.options[i].text == paramText) {
            isExist = true;
            break;
        }
    }

    return isExist;
}

//向objDdl添加一个item,其中value为paramValue,text为paramText
function(objDdl , paramValue , paramText)
{
    //首先判断是否已存在paramValue的项
    if(this.isExistItemByValue(objDdl,paramValue))
    {
        alert('添加失败,不能添加重复项:' + paramValue);
    }
    else
    {
        var varItem = new Option(paramText,paramValue);
        objDdl.options.add(varItem);
    }
}

//向objDdl删除一个item,其中参数为value的值为paramValue
 function(objDdl , paramValue)
{
    //首先判断是否存在该项,存在才删除
    if (!this.isExistItemByValue(objDdl, paramValue))
    {
        alert('删除失败,因为不存在该项:' + paramValue);
    }
    else
    {
        for(var i = 0 ; i< objDdl.options.length ; i++)
        {
            if(objDdl.options[i].value == paramValue)
            {
                objDdl.options.remove(i);
                break;
            }
        }
    }
}

//向objDdl删除找到的item,其中参数为text的值为paramText
function(objDdl, paramText) {
    //首先判断是否存在该项,存在才删除
    if (!this.isExistItemByText(objDdl, paramText)) {
        alert('删除失败,因为不存在该项:' + paramText);
    }
    else {
        for (var i = 0; i < objDdl.options.length; i++) {
            if (objDdl.options[i].text == paramText) {
                objDdl.options.remove(i);
            }
        }
    }
}

//删除objDdl当前选中的项
ddlHandler.removeSelectedListItem = function(objDdl)
{
    objDdl.options[objDdl.selectedIndex] = null;
}

//修改objDdl选项中value = "paramValue"的text为"paramText"
function(objDdl , paramValue , paramText)
{
    if (this.isExistItemByValue(objDdl, paramValue))
    {
        for(var i= 0 ; i< objDdl.options.length ; i++)
        {
            if(objDdl.options[i].value == paramValue)
            {
                objDdl.options[i].text = paramText;
                break;
            }
        }
    }
    else
    {
        alert('更新失败,不存在该项:' + paramValue);
    }
}

//设置objDdl中text为"paramText"的第一个Item为选中
 function(objDdl , paramText)
{
    //判断是否存在
    var isExist = false;
    for (var i = 0; i < objDdl.options.length; i++) {
        if (objDdl.options[i].text == paramText) {
            objDdl.options[i].selected = true;
            isExist = true;
            break;
        }
    }
    
    //显示出来结果
    if(!isExist)
    {
        alert('选择失败,不存在该项:' + paramText)
    }
}

//得到当前的选中项的值value
function(objDdl) {
    return objDdl.value;
}

//得到当前的选中项的值text
function(objDdl) {
    return objDdl.options[objDdl.selectedIndex].text;
}


//设置objDdl中value = "paramValue"的item为选中
function(objDdl, paramValue) {
    objDdl.value = paramValue;
}

//得到当前选中项的Index
function(objDdl) {
    return objDdl.selectedIndex;
}

posted @ 2012-08-24 08:43  千百渡  Views(930)  Comments(2)    收藏  举报