checkbox,radio,select 常用方法
2017-11-01 本文已影响12人
我跟你蒋
1.checkbox
<input type="checkbox" id="checkAll"/>全选
<input type="checkbox" name="Box"/>足球
<input type="checkbox" name="Box"/>篮球
<input type="checkbox" name="Box"/>棒球
全选,全不选
<script type="text/javascript">
$(function() {
$("#checkAll").click(function() {
// $('input[name="Box"]').attr("checked",this.checked); 不要用attr,使用 attr时总是出现第二次点击时checkbox不变化,
//因为jquery1.6以后已经不用attr处理布尔值的属性了
$('input[name="Box"]').prop("checked",this.checked);
});
var $Box = $("input[name='Box']");
$Box.click(function(){
$("#checkAll").prop("checked",$Box.length ===$("input[name='Box']:checked").length ? true : false);
});
});
</script>
checkbox属性:
var val = $("#id").val();// 获取指定id的复选框的值
var isSelected = $("#checkAll").prop("checked"); // 判断id=checkAll的那个复选框是否处于选中状态,选中则返回true;否则false;
$("#id").prop("checked", true);// or
$("#id").prop("checked", 'checked');// 将id=checkbox_id的那个复选框选中
$("#id").prop("checked", false);// or
$("#id").prop("checked", '');// 将id=checkbox_id的那个复选框不选中
$("input[name=Box][value=3]").prop("checked", 'checked');// 将name=Box, value=3 的那个复选框选中
$("input[name=Box][value=3]").prop("checked", '');// 将name=Box, value=3 的那个复选框不选中
$("input[type=checkbox][name=Box]").get(2).checked = true;// 设置index = 2,即第三项为选中状态
$("input[type=checkbox]:checked").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出选中的值
console.log($(this).val());
});
2.radio
<input type="radio" name="radio" id="radio1" value="1" />1
<input type="radio" name="radio" id="radio2" value="2" />2
<input type="radio" name="radio" id="radio3" value="3" />3
<input type="radio" name="radio" id="radio4" value="4" />4
radio使用
$("input[name=radio]:eq(0)").attr("checked",'checked'); //选中第一个
$("#radio1").attr("checked","checked");
$("#radio1").removeAttr("checked");
$("input[type='radio'][name='radio']:checked").length == 0 ? "没有任何单选框被选中" : "已经有选中";
$('input[type="radio"][name="radio"]:checked').val(); // 获取一组radio被选中项的值
$("input[type='radio'][name='radio'][value='2']").attr("checked", "checked");// 设置value = 2的一项为选中
$("#radio2").attr("checked", "checked"); // 设置id=radio2的一项为选中
$("input[type='radio'][name='radio']").get(1).checked = true; // 设置index = 1,即第二项为当前选中
var isChecked = $("#radio2").attr("checked");//获取选中状态
3.select
<select name="select" id="select" >
<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>
select属性
$("#select").change(function(){ // 1.为Select添加事件,当选择其中一项时触发
...
})
var selectValue = $("#select").val(); // 2.获取Select选中项的Value
var selectText = $("#select :selected").text(); // 3.获取Select选中项的Text
var selectIndex = $("#select").prop("selectedIndex"); // 4.获取Select选中项的索引值,或者:$("#select").get(0).selectedIndex;
var maxIndex =$("#select :last").get(0).index; // 5.获取Select最大的索引值
/**
*设置Select的选中项
**/
$("#select").get(0).selectedIndex = 1; // 1.设置Select索引值为1的项选中
$("#select").val(4); // 2.设置Select的Value值为4的项选中
/**
*添加/删除Select的Option项
**/
$("#select").append("<option value='新增'>新增option</option>"); // 1.为Select追加一个Option(下拉项)
$("#select").prepend("<option value='请选择'>请选择</option>"); // 2.为Select插入一个Option(第一个位置)
$("#select").get(0).remove(1); // 3.删除Select中索引值为1的Option(第二个)
$("#select :last").remove(); // 4.删除Select中索引值最大Option(最后一个)
$("#select [value='3']").remove(); // 5.删除Select中Value='3'的Option
$("#select").empty();
$("#select").find("option:selected").text(); // 获取select 选中的 text :
$("#select").val(); // 获取select选中的 value:
$("#select").get(0).selectedIndex; // 获取select选中的索引:
//设置select 选中的value:
$("#select").attr("value","Normal");
$("#select").val("Normal");
$("#select").get(0).value = value;
//设置select 选中的text,通常可以在select回填中使用
var numId=33 //设置text==33的选中!
var count=$("#select option").length;
for(var i=0;i<count;i++){
if($("#select_id").get(0).options[i].text === numId)
{
$("#select_id").get(0).options[i].selected = true;
break;
}
}