在开发过程中,为了提高代码维护性,一般使用foreach语句来输出复选框或者单选框中的值。例如我的这段代码:
1 <?php 2 foreach ($Array_yanpan_report_muban as $key => $value){ 3 ?> 4 <label class="radio-inline"> 5 <input type="radio" name="muban" value="<?php echo $key;?>"><?php echo $value;?> 6 </label> 7 <?php
8 }
9 ?>
其中,$Array_yanpan_report_muban是一个数组。
在要想获取到你选取的单选框的value值,我一般在javascript中这样写:
1 <script type="text/javascript"> 2 $(function () { 3 $("#add").click(function () { 4 var muban =$('input[name="muban"]:checked').val(); 5 alert(muban); 6 }); 7 }); 8 </script>
这里主要是“:checked”不要漏掉。
而对于复选框,可能会相对复杂一点,因为复选框可以一下获取多个值。
<div class="fc_body"> <?php $i=1; if(!empty($rows)){ foreach($rows as $row){ ?> <label class="checkbox-inline"> <input type="checkbox" id="check" name="sensitive_words" value="<?php echo $row['name'];?>"/><?php echo $row['name'];?> </label> <?php $i++; } }else{ echo '<tr><td class="center" colspan="6">没有敏感词</td></tr>'; } ?>
</div>
其中$rows是一个二维数组。
在要想获取到你选取的复选框的value值,我一般在javascript中这样写:
var name_array=new Array();
$('input[name="sensitive_words"]:checked').each(function(){ name_array.push($(this).val());//向数组中添加元素 }); var name=name_array.join(',');//将数组元素连接起来以构建一个字符串
这样,所有被选中的value值构成一个字符串,它们之间用逗号进行分隔。
如果要使用它们,可以把它们打散之后形成一个数组,像这样:
$array=explode(",",$name); try { foreach ($array as $arr){ $r = Sensitive_word::del($arr,$ADMIN->getId()); } echo $r; }catch (MyException $e){ echo $e->jsonMsg(); }
用explode函数将其值构成一个数组,之后用foreach函数进行调用。
这样,就完成了单选框和复选框中对value值的获取!