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);
});
jquery的attr属性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) {
ve(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;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。