PHP中的checkbox

研究一下checkbox,竟然很有问题啊。

第一个问题:

PHP中的checkbox取值和JSP等不一样,需要吧checkbox写成数组的格式:

 <td>

 <input name="check[]" type="checkbox" id="check1" size="6" value="Agent">代理区
 <input name="check[]"  type="checkbox" id="check2" size="6"  value="SmsAddr">信息名址后台
  <input name="check[]" type="checkbox" id="check3" size="6"  value="Member">会员区    
 </td>

而在普通的JSP或者是HTML中使用checkbox是:check[]没有“[]”

<td>

 <input name="check" type="checkbox" id="check1" size="6" value="Agent">代理区
 <input name="check"  type="checkbox" id="check2" size="6"  value="SmsAddr">信息名址后台
  <input name="check" type="checkbox" id="check3" size="6"  value="Member">会员区    
  

</td>

 

第二个问题:

注意到上面的id都是不一样的,会造成即使你选择了三个,但是在PHP得到的只是最后一个。

把id全部去掉就没有问题了。但是有需要验证,从而,还是需要有个标识来标注这三个不同的checkbox,所以想到了class属性。

<td>

<input name="check[]" type="checkbox" class="che1"  size="6" value="Agent">代理区
 <input name="check[]"  type="checkbox"  class="che2" size="6"  value="SmsAddr">信息名址后台
 <input name="check[]" type="checkbox"  class="che3" size="6"  value="Member">会员区    
 </td>

从而能够实现用JQuery的方式验证:

//判断checkbox不为空的实现
function  OkSubmit(objName)
{
 var Title     = $('#Title').val();
 var Content     = $('#Content').val();
 var DealTime     = $('#DealTime').val();
 
 var Title = $.trim(Title);//过滤首尾的空格
 var Content = $.trim(Content);
 var DealTime = $.trim(DealTime);

 var TitleLong  = $('#Title').val().length;
 if(200 < TitleLong)
 {
  alert("标题字数须小于100字");//限定标题的长度
  return false;
 }

 if(Title == "" || Content == "" || DealTime =="")
 {
  alert("请完整填写内容!");
        return false;
 }
 
 //必须是2005-05-09这种格式,2005-5-5这种格式也不行。
 var reg = /[0-9]{4}\-[0-9]{2}\-[0-9]{2}/;
 if (!reg.exec(DealTime))
 {
  alert("请按指定格式的日期填写");
  return false;
 } 


 var che1 = $(".che1").attr("checked");
 var che2 = $(".che2").attr("checked");
 var che3 = $(".che3").attr("checked");

 //如果这三个值都是false,就证明没有选择,提示选择
 if(false== che1  && false== che2 && false== che3)
 {
  alert("请至少选择一个平台");
        return false;
 }
 
 $("input[@type=checkbox][@checked]").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出
     //alert($(this).val());
   $('#form1').submit();
   return;
    });

如上这些代码实现很多页面的验证,字符长度,字符正则的匹配,判空的处理等。都是用JQuery实现的。

 

$check = $this->getValue("check");这是在PHP中取得多选框的方法,当然是公司封装好框架的方法了,不通用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值