2017-05-10 15:33:28 2069次浏览 5条回答 0 悬赏 10 金钱

需求是这样的:要求选择时间范围,两个输入框 开始时间 和 结束时间 ,2个要求,当结束时间有内容,则开始时间不能为空,且结束时间应大于开始时间 。

我想着用 whenclient吧


['todate', '????',//问号这里该怎么填  
'message' => '结束时间应大于开始时间.',
'whenClient' =>"function (attribute, value) {
        return $('#todate').value > $('#fromdate').value;}"]

补充于 2017-05-10 22:20

谢谢各位这么速度的回复,我晚点去测一下。
需求主要是前端自动生成js验证的

最佳答案

  • dashixiong 发布于 2017-05-10 15:50 举报
    ['fromdate', 'string'],
    ['todate', 'validateCheckDate'],
    
    public function validateCheckDate($attribute, $params){
            if (!$this->hasErrors()) {
                if(isset($this->todate)){
                    if(isset($this->fromdate)){
                        if(strtotime($this->todate) <= strtotime($this->fromdate)){
                            $this->addError($attribute, '结束时间应大于开始时间!');
                        }
                    }else{
                        $this->addError($attribute, '请填写结束时间!');
                    }
                }
            }
    }
    

    isset 如果判断不行就换成empty 或者等于空什么的判断,我不知道你传的是字符串还是什么

    1 条回复
    回复于 2017-05-12 11:01 回复

    有点美中不足的是,没有前台JS

您需要登录后才可以回答。登录 | 立即注册
搞搞的传奇
见习主管

搞搞的传奇

注册时间:2015-02-24
最后登录:2020-06-04
在线时长:24小时46分
  • 粉丝8
  • 金钱5
  • 威望10
  • 积分345

热门问题