input 的radio checkbox 和 select 相关操作
1 select 获取和设置值,以及onchange事件
1下拉框option没有checked事件 可通过select 的 onchange事件进行监控,以获取其值
<select name="myselect" > <option value="opt1">选项1</option> <option value="opt2">选项2</option> <option value="opt3">选项3</option> </select> $("#myselect").change(function(){ var opt=$("#myselect").val(); ... });
2 普通的设置以及获取值
<select name="width" > <option value="50%">50%</option> <option value="100%">100%</option> </select> 在js中 1:var options=$("#test option:selected"); //获取选中的项 alert(options.val()); //拿到选中项的值 alert(options.text()); 2:$("#selectW").find("option:selected").text();//选中的文本 3:$('#selectW option[value="100%"]').attr('selected',true);//设置某个值被选中 4:$(".selector").find("option:selected").text(); 5:$(".selector").find("option[text='pxx']").attr("selected",true);
//(obj.someTime = '12:00-13:00'类似的值的时候) $('#orderTime').val(''+obj.orderTime); $('#orderTime').find('option[value="'+obj.orderTime+'"]').attr('selected',true); $('#orderTime option[value="'+obj.orderTime+'"]').attr('selected',true);
注意:input的单选多选按钮是checked 详见下面的介绍;
2 checkbox的赋值和取值
1. 获取单个checkbox选中项(三种写法):
$("input:checkbox:checked").val() //或者 $("input:[type='checkbox']:checked").val(); //或者 $("input:[name='ck']:checked").val();
2. 获取多个checkbox选中项:
$('input:checkbox').each(function() { if ($(this).attr('checked') ==true) { alert($(this).val()); } });
3. 设置第一个checkbox 为选中值:
$('input:checkbox:first').attr("checked",'checked'); $('input:checkbox').eq(0).attr("checked",'true');
4. 设置最后一个checkbox为选中值:
$('input:radio:last').attr('checked', 'checked'); $('input:radio:last').attr('checked', 'true');
5. 根据索引值设置任意一个checkbox为选中值:
$('input:checkbox).eq(索引值).attr('checked', 'true');索引值=0,1,2.... $('input:radio').slice(1,2).attr('checked', 'true');
6. 选中多个checkbox:
同时选中第1个和第2个的checkbox:
$('input:radio').slice(0,2).attr('checked','true');
7. 根据Value值设置checkbox为选中值:
$("input:checkbox[value='1']").attr('checked','true');
8. 删除Value=1的checkbox:
$("input:checkbox[value='1']").remove();
9. 删除第几个checkbox:
$("input:checkbox").eq(索引值).remove();索引值=0,1,2.... //如删除第3个checkbox: $("input:checkbox").eq(2).remove();
10.遍历checkbox:
$('input:checkbox').each(function (index, domEle) { //写入代码 });
11.全部选中
$('input:checkbox').each(function() { $(this).attr('checked', true); });
12.全部取消选择:
$('input:checkbox').each(function () { $(this).attr('checked',false); });