Js操作Select大全(取值、设置选中等等)

前端技术 2023/09/09 JavaScript
jquery操作select(取值,设置选中)

每一次操作select的时候,总是要出来翻一下资料,不如自己总结一下,以后就翻这里了。

比如<select class=\"selector\"></select>

1、设置value为pxx的项选中

$(\".selector\").val(\"pxx\");

2、设置text为pxx的项选中

$(\".selector\").find(\"option[text=\'pxx\']\").attr(\"selected\",true);

这里有一个中括号的用法,中括号里的等号的前面是属性名称,不用加引号。很多时候,中括号的运用可以使得逻辑变得很简单。

3、获取当前选中项的value

$(\".selector\").val();

4、获取当前选中项的text

$(\".selector\").find(\"option:selected\").text();

这里用到了冒号,掌握它的用法并举一反三也会让代码变得简洁。

很多时候用到select的级联,即第二个select的值随着第一个select选中的值变化。这在jquery中是非常简单的。

如:
复制代码 代码如下:

$(\".selector1\").change(function(){

// 先清空第二个

$(\".selector2\").empty();

// 实际的应用中,这里的option一般都是用循环生成多个了

var option = $(\"<option>\").val(1).text(\"pxx\");

$(\".selector2\").append(option);

});

Js操作Select大全

判断select选项中 是否存在Value=\"paraValue\"的Item
向select选项中 加入一个Item
从select选项中 删除一个Item
删除select中选中的项
修改select选项中 value=\"paraValue\"的text为\"paraText\"
设置select中text=\"paraText\"的第一个Item为选中
设置select中value=\"paraValue\"的Item为选中
得到select的当前选中项的value
得到select的当前选中项的text
得到select的当前选中项的Index
清空select的项
js 代码
复制代码 代码如下:

// 1.判断select选项中 是否存在Value=\"paraValue\"的Item
function jsSelectIsExitItem(objSelect, objItemValue) {
var isExit = false;
for (var i = 0; i < objSelect.options.length; i++) {
if (objSelect.options[i].value == objItemValue) {
isExit = true;
break;
}
}
return isExit;
}

// 2.向select选项中 加入一个Item
function jsAddItemToSelect(objSelect, objItemText, objItemValue) {
//判断是否存在
if (jsSelectIsExitItem(objSelect, objItemValue)) {
alert(\"该Item的Value值已经存在\");
} else {
var varItem = new Option(objItemText, objItemValue);
objSelect.options.add(varItem);
alert(\"成功加入\");
}
}

// 3.从select选项中 删除一个Item
function jsRemoveItemFromSelect(objSelect, objItemValue) {
//判断是否存在
if (jsSelectIsExitItem(objSelect, objItemValue)) {
for (var i = 0; i < objSelect.options.length; i++) {
if (objSelect.options[i].value == objItemValue) {
objSelect.options.remove(i);
break;
}
}
alert(\"成功删除\");
} else {
alert(\"该select中 不存在该项\");
}
}


// 4.删除select中选中的项
function jsRemoveSelectedItemFromSelect(objSelect) {
var length = objSelect.options.length - 1;
for(var i = length; i >= 0; i--){
if(objSelect[i].selected == true){
objSelect.options[i] = null;
}
}
}

// 5.修改select选项中 value=\"paraValue\"的text为\"paraText\"
function jsUpdateItemToSelect(objSelect, objItemText, objItemValue) {
//判断是否存在
if (jsSelectIsExitItem(objSelect, objItemValue)) {
for (var i = 0; i < objSelect.options.length; i++) {
if (objSelect.options[i].value == objItemValue) {
objSelect.options[i].text = objItemText;
break;
}
}
alert(\"成功修改\");
} else {
alert(\"该select中 不存在该项\");
}
}

// 6.设置select中text=\"paraText\"的第一个Item为选中
function jsSelectItemByValue(objSelect, objItemText) {
//判断是否存在
var isExit = false;
for (var i = 0; i < objSelect.options.length; i++) {
if (objSelect.options[i].text == objItemText) {
objSelect.options[i].selected = true;
isExit = true;
break;
}
}
//Show出结果
if (isExit) {
alert(\"成功选中\");
} else {
alert(\"该select中 不存在该项\");
}
}

// 7.设置select中value=\"paraValue\"的Item为选中
document.all.objSelect.value = objItemValue;

// 8.得到select的当前选中项的value
var currSelectValue = document.all.objSelect.value;

// 9.得到select的当前选中项的text
var currSelectText = document.all.objSelect.options[document.all.objSelect.selectedIndex].text;

// 10.得到select的当前选中项的Index
var currSelectIndex = document.all.objSelect.selectedIndex;

// 11.清空select的项
document.all.objSelect.options.length = 0;

本文地址:https://www.stayed.cn/item/24253

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。