插件的js的代码如下:
使用这些方法时,首先要引入Jquery.js库,那么你就可以使用上面的这些方法了 。
Query.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;
}