很多朋友对jquery select的操作很有兴趣,但网上的东西太多,所以脚本之家特别将Jquery Select操作方法整理下,方便大家查找。需要注意的是,这里的代码好多是针对jquery 1.32以前的版本(以后的版本已经不支持@),所以替换为空测试下即可。
jQuery获取Select选择的Text和Value
// 为Select添加事件,当选择其中一项时触发
$("#select_id").change(function(){
// code...
});
// 获取Select选择的Text
var checkText = $("#select_id").find("option:selected").text();
// 获取Select选择的Value
var checkValue = $("#select_id").val();
// 获取Select选择的索引值
var checkIndex = $("#select_id ").get(0).selectedIndex;
// 获取Select最大的索引值
var maxIndex = $("#select_id option:last").attr("index");
// 取得下拉选单的选取值
$(#testSelect option:selected').text();
// 或者
$("#testSelect").find('option:selected').text();
// 或者
$("#testSelect").val();jQuery设置Select选择的Text和Value:
// 设置Select索引值为1的项选中
$("#select_id ").get(0).selectedIndex=1;
// 设置Select的Value值为4的项选中
$("#select_id ").val(4);
// 设置Select的Text值为jQuery的项选中
$("#select_id option[text='jQuery']").attr("selected", true);jQuery添加/删除Select的Option项:
//为Select追加一个Option(下拉项)
$("#select_id").append("<option value='Value'>Text</option>");
//为Select插入一个Option(第一个位置)
$("#select_id").prepend("<option value='0'>请选择</option>");
// 删除Select中索引值最大Option(最后一个)
$("#select_id option:last").remove();
// 删除Select中索引值为0的Option(第一个)
$("#select_id option[index='0']").remove();
// 删除Select中Value='3'的Option
$("#select_id option[value='3']").remove();
// 删除Select中Text='4'的Option
$("#select_id option[text='4']").remove();
//遍历option和添加、移除option
function changeShipMethod(shipping){
var len = $("select[@name=ISHIPTYPE] option").length
if(shipping.value != "CA"){
$("select[@name=ISHIPTYPE] option").each(function(){
if($(this).val() == 111){
$(this).remove();
}
});
}else{
$("<option value='111'>UPS Ground</option>").appendTo($("select[@name=ISHIPTYPE]"));
}
}记性不好的可以收藏下:
1、下拉框
//得到下拉菜单的选中项的文本(注意中间有空格)
var cc1 = $(".formc select[@name='country'] option[@selected]").text();
//得到下拉菜单的选中项的值
var cc2 = $('.formc select[@name="country"]').val();
//得到下拉菜单的选中项的ID属性值
var cc3 = $('.formc select[@name="country"]').attr("id");
//清空下拉框//$("#select").html('');
$("#select").empty();
//添加下拉框的option
$("<option value='1'>1111</option>").appendTo("#select")稍微解释一下:
select[@name='country']
option[@selected] 表示具有name 属性, 并且该属性值为'country' 的select元素,里面的具有selected 属性的option 元素; 可以看出有@开头的就表示后面跟的是属性。
注意:以后的版本已经不支持@
2、单选框
//得到单选框的选中项的值(注意中间没有空格)
$("input[@type=radio][@checked]").val();
//设置单选框value=2的为选中状态.(注意中间没有空格)
$("input[@type=radio][@value=2]").attr("checked",'checked');3、复选框
// 得到复选框的选中的第一项的值
$("input[@type=checkbox][@checked]").val();
// 由于复选框一般选中的是多个,所以可以循环输出
$("input[@type=checkbox][@checked]").each(function(){
alert($(this).val());
});
// 不打勾
$("#chk1").attr("checked",'');
// 打勾
$("#chk2").attr("checked",true);
// 判断是否已经打勾
if ( $("#chk1").attr('checked') == undefined ) {
// ...
}当然jquery的选择器是强大的.。还有很多方法.
<script src="jquery-1.2.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$("#selectTest").change(function(){
//alert("Hello");
//alert($("#selectTest").attr("name"));
//$("a").attr("href","xx.html");
//window.location.href="xx.html";
//alert($("#selectTest").val());
alert($("#selectTest option[@selected]").text());
$("#selectTest").attr("value", "2");
});
});
</script>
<a href="#">aaass</a>
<!--下拉框-->
<select id="selectTest" name="selectTest">
<option value="1">11</option>
<option value="2">22</option>
<option value="3">33</option>
<option value="4">44</option>
<option value="5">55</option>
<option value="6">66</option>
</select>jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关获取一组radio被选中项的值
var item = $('input[@name=items][@checked]').val();获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;radio单选组的第二个元素为当前选中值
$('input[@name=items]').get(1).checked = true;获取值
// 文本框,文本区域:
$("#txt").attr("value");
// 多选框checkbox:
$("#checkbox_id").attr("value");
// 单选组radio:
$("input[@type=radio][@checked]").val();
// 下拉框select:
$('#sel').val();控制表单元素
// 清空内容
$("#txt").attr("value",'');
// 填充内容
$("#txt").attr("value",'11');多选框checkbox
// 不打勾
$("#chk1").attr("checked",'');
// 打勾
$("#chk2").attr("checked",true);
// 判断是否已经打勾
if($("#chk1").attr('checked')==undefined)单选组radio
// 设置value=2的项目为当前选中项
$("input[@type=radio]").attr("checked",'2');下拉框select
// 设置value=-sel3的项目为当前选中项
$("#sel").attr("value",'-sel3');
// 添加下拉框的option
$("<optionvalue='1'>1111</option><optionvalue='2'> 2222</option>").appendTo("#sel")
// 清空下拉框
$("#sel").empty();获取一组radio被选中项的值
var item = $('input[@name=items][@checked]').val();获取select被选中项的文本
var item = $("select[@name=items] option[@selected]").text();
// select下拉框的第二个元素为当前选中值
$('#select_id')[0].selectedIndex = 1;
// radio单选组的第二个元素为当前选中值
$('input[@name=items]').get(1).checked = true;获取值
文本框,文本区域
$("#txt").attr("value");多选框checkbox
$("#checkbox_id").attr("value");单选组radio
$("input[@type=radio][@checked]").val();下拉框select
$('#sel').val();