- //得到select项的个数
- jQuery.fn.size = function(){
- return jQuery(this).get(0).options.length;
- }
- //获得选中项的索引
- jQuery.fn.getSelectedIndex = function(){
- return jQuery(this).get(0).selectedIndex;
- }
- //获得当前选中项的文本
- jQuery.fn.getSelectedText = function(){
- if(this.size() == 0) return "下拉框中无选项";
- else{
- var index = this.getSelectedIndex();
- return jQuery(this).get(0).options[index].text;
- }
- }
- //获得当前选中项的值
- jQuery.fn.getSelectedValue = function(){
- if(this.size() == 0)
- return "下拉框中无选中值";
- else
- return jQuery(this).val();
- }
- //设置select中值为value的项为选中
- jQuery.fn.setSelectedValue = function(value){
- jQuery(this).get(0).value = value;
- }
- //设置select中文本为text的第一项被选中
- jQuery.fn.setSelectedText = function(text)
- {
- var isExist = false;
- var count = this.size();
- for(var i=0;i<count;i++)
- {
- if(jQuery(this).get(0).options[i].text == text)
- {
- jQuery(this).get(0).options[i].selected = true;
- isExist = true;
- break;
- }
- }
- if(!isExist)
- {
- alert("下拉框中不存在该项");
- }
- }
- //设置选中指定索引项
- jQuery.fn.setSelectedIndex = function(index)
- {
- var count = this.size();
- if(index >= count || index < 0)
- {
- alert("选中项索引超出范围");
- }
- else
- {
- jQuery(this).get(0).selectedIndex = index;
- }
- }
- //判断select项中是否存在值为value的项
- jQuery.fn.isExistItem = function(value)
- {
- var isExist = false;
- var count = this.size();
- for(var i=0;i<count;i++)
- {
- if(jQuery(this).get(0).options[i].value == value)
- {
- isExist = true;
- break;
- }
- }
- return isExist;
- }
- //向select中添加一项,显示内容为text,值为value,如果该项值已存在,则提示
- jQuery.fn.addOption = function(text,value)
- {
- if(this.isExistItem(value))
- {
- alert("待添加项的值已存在");
- }
- else
- {
- jQuery(this).get(0).options.add(new Option(text,value));
- }
- }
- //删除select中值为value的项,如果该项不存在,则提示
- jQuery.fn.removeItem = function(value)
- {
- if(this.isExistItem(value))
- {
- var count = this.size();
- for(var i=0;i<count;i++)
- {
- if(jQuery(this).get(0).options[i].value == value)
- {
- jQuery(this).get(0).remove(i);
- break;
- }
- }
- }
- else
- {
- alert("待删除的项不存在!");
- }
- }
- //删除select中指定索引的项
- jQuery.fn.removeIndex = function(index)
- {
- var count = this.size();
- if(index >= count || index < 0)
- {
- alert("待删除项索引超出范围");
- }
- else
- {
- jQuery(this).get(0).remove(index);
- }
- }
- //删除select中选定的项
- jQuery.fn.removeSelected = function()
- {
- var index = this.getSelectedIndex();
- this.removeIndex(index);
- }
- //清除select中的所有项
- jQuery.fn.clearAll = function()
- {
- jQuery(this).get(0).options.length = 0;
- }
jquery操作select
最新推荐文章于 2024-10-29 12:21:34 发布