单选/多选/下拉框

在进行web开发的时候会经常接触到单选和多选,所以我觉得有必须对此进行一下总结:
用js进行判断

复选框
//第几个没有选  
<input type="checkbox" name="checkbox1" checked>  
<input type="checkbox" name="checkbox1">  
<input type="checkbox" name="checkbox1" checked>  
<input type="checkbox" name="checkbox1">  
<input type="checkbox" name="checkbox1"> 
<script language=javascript>    
function check(obj)   
{     
for(i=0;i<document.all(obj).length;i++)  
{  
if(!document.all(obj)[i].checked)alert("第"+(i+1)+"个没有选择")  
}  
}  
<input type=button οnclick="check('checkbox1')" value="检测">  
//一个也没有选 
<input type="checkbox" name="test">  
<input type="checkbox" name="test">  
<input type="checkbox" name="test">  
<input type="checkbox" name="test">  
<input type="checkbox" name="test">  
<Script Language="JavaScript">  
function check(obj){   
for(i=0;i<document.all(obj).length;i++){  
if(document.all(obj)(i).checked){  
return;  
}  
}  
window.alert('一个也没有选!');  
}  
</Script>  
<input type=button οnclick="check('test');" value="检测">  
//第几个没有选
<input type="checkbox" name="checkbox1" checked>
<input type="checkbox" name="checkbox1">
<input type="checkbox" name="checkbox1" checked>
<input type="checkbox" name="checkbox1">
<input type="checkbox" name="checkbox1">
<mce:script language=javascript><!--
function check(obj)
{
for(i=0;i<document.all(obj).length;i++)
{
if(!document.all(obj)[i].checked)alert("第"+(i+1)+"个没有选择")
}
}
<input type=button οnclick="check('checkbox1')" value="检测">
 //一个也没有选
<input type="checkbox" name="test">
<input type="checkbox" name="test">
<input type="checkbox" name="test">
<input type="checkbox" name="test">
<input type="checkbox" name="test">
<Script Language="JavaScript">
function check(obj){
for(i=0;i<document.all(obj).length;i++){
if(document.all(obj)(i).checked){
return;
}
}
window.alert('一个也没有选!');
}
</Script>
<input type=button οnclick="check('test');" value="检测">
单选按钮与复选框类似
在实际开发中有很多使用Jquery来进行操作的,当然使用jquery要方便的多,以下一段内容引自博客园
以下Jquery代码适query1.4版本以上。
Radio                                                
 

1.获取选中值,三种方法都可以:

$('input:radio:checked').val();

$("input[type='radio']:checked").val();

$("input[name='rd']:checked").val();

2.设置第一个Radio为选中值:

    $('input:radio:first').attr('checked', 'checked');

或者

$('input:radio:first').attr('checked', 'true');

注: attr("checked",'checked')= attr("checked", 'true')= attr("checked", true)

3.设置最后一个Radio为选中值:

$('input:radio:last').attr('checked', 'checked');

或者

$('input:radio:last').attr('checked', 'true');

4.根据索引值设置任意一个radio为选中值:

$('input:radio').eq(索引值).attr('checked', 'true');索引值=0,1,2....

或者

$('input:radio').slice(1,2).attr('checked', 'true');

5.根据Value值设置Radio为选中值

$("input:radio[value='rd2']").attr('checked','true');

或者

$("input[value='rd2']").attr('checked','true');

6.删除Value值为rd2的Radio

$("input:radio[value='rd2']").remove();

7.删除第几个Radio

$("input:radio").eq(索引值).remove();索引值=0,1,2....

如删除第3个Radio:$("input:radio").eq(2).remove();

8.遍历Radio

$('input:radio').each(function(index,domEle){

     //写入代码

});

DropDownList

 

1.   获取选中项:

获取选中项的Value值:

      $('select#sel option:selected').val();

     或者

       $('select#sel').find('option:selected').val();

获取选中项的Text值:

      $('select#seloption:selected').text();

     或者

       $('select#sel').find('option:selected').text();

2.   获取当前选中项的索引值:

$('select#sel').get(0).selectedIndex;

3.   获取当前option的最大索引值:

$('select#sel option:last').attr("index")

4.   获取DropdownList的长度:

$('select#sel')[0].options.length;

或者

$('select#sel').get(0).options.length;

5.  设置第一个option为选中值:

$('select#sel option:first').attr('selected','true')

或者

 $('select#sel')[0].selectedIndex = 0;

6.   设置最后一个option为选中值:

$('select#sel option:last).attr('selected','true')

7.   根据索引值设置任意一个option为选中值:

$('select#sel')[0].selectedIndex =索引值;索引值=0,1,2....

8.   设置Value=4 的option为选中值:

$('select#sel').attr('value','4');

或者

$("select#sel option[value='4']").attr('selected', 'true');

9.   删除Value=3的option:

$("select#sel option[value='3']").remove();

10.删除第几个option:

$(" select#sel option ").eq(索引值).remove();索引值=0,1,2....

如删除第3个Radio:

$(" select#sel option ").eq(2).remove();

11.删除第一个option:

$(" select#sel option ").eq(0).remove();

或者

$("select#sel option:first").remove();

12. 删除最后一个option:

$("select#sel option:last").remove();
13. 删除dropdownlist:

$("select#sel").remove();

14.在select后面添加一个option:

$("select#sel").append("<option value='6'>f</option>");
15. 在select前面添加一个option:

$("select#sel").prepend("<option value='0'>0</option>");
16. 遍历option:

$(' select#sel option ').each(function (index, domEle) {

//写入代码
});

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);

});

也有使用struts标签的,
 <s:select name="assuUnit" id="assuUnit" list="#request.list" listKey="businessUnitCode" listValue="businessUnitName" headerKey="" headerValue="----请选择业务单元----" οnchange="changeHidenValue();"></s:select>
<input type="hidden" id="assuUnitName" name="assuUnitName" value=""/>
     当提交表单时,只能在后台获得listKey的值,而无法提交listValue的值。
     现有需求同时提交listKey和listValue,解决方法如下:
     1、在select的onchange事件函数中,获得option中的text,即listValue。
     2、这时,写回到表单的一个隐藏域中。
 可以用:
function changeHidenValue(){
var obj=document.getElementById('assuUnit');   
var index=obj.selectedIndex; //序号,取当前选中选项的序号   
var val = obj.options[index].text
if(document.getElementById('assuUnit').value!=''){
document.getElementById('assuUnitName').value=val;
}
}
来实现..


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值