phpcms v9为联动菜单字段添加验证提醒功能 解决标题不能为空

v9系统中,如果你在模型中添加了联动菜单字段
就算你在字段设置中设置了最小值为1,提交内容之前你不选择联动菜单中的值,也不会出现类似类似“标题不能为空”这样的提示
下面提供解决办法
打开phpcms\libs\functions\global.func.php文件,找到大概859行中的

  • $var_input = $defaultvalue && (route_a=='edit' || route_a=='account_manage_info') ? '<input type="hidden" name="info['.$id.']" value="'.$defaultvalue.'">' : '<input type="hidden" name="info['.$id.']" value="">';

修改为:

  • $var_input = $defaultvalue && (route_a=='edit' || route_a=='account_manage_info'  || route_a=='info_publish') ? '<input type="hidden" name="info['.$id.']" id="a'.$id.'" value="'.$defaultvalue.'">' : '<input type="hidden" name="info['.$id.']" id="a'.$id.'" value="">';

其实也就是给隐藏的表单添加多一个 id="a'.$id.'"
具体你自己对比下

第二个就是
打开:
phpcms\modules\content\fields\linkage\form.inc.php
找到第三行,在其后加上

  • $linkageidb=$linkageid+1;
     
  •         $errortips = $this->fields[$field]['errortips'];
     
  •         if($errortips || $minlength) $this->formvalidator .= '$("#a'.$field.'").formvalidator({onshow:"",onfocus:"'.$errortips.'"}).inputvalidator({min:'.$linkageidb.',max:9999,type:"value",onerror:"'.$errortips.'"});';

下面附上修改后的phpcms\modules\content\fields\linkage\form.inc.php文件内容,和你自己的修改后的对比下

  •         function linkage($field, $value, $fieldinfo) {
     
  •                 $setting = string2array($fieldinfo['setting']);
     
  •                 $linkageid = $setting['linkageid'];
     
  •         $linkageidb=$linkageid+1;
     
  •         $errortips = $this->fields[$field]['errortips'];
     
  •         if($errortips || $minlength) $this->formvalidator .= '$("#a'.$field.'").formvalidator({onshow:"",onfocus:"'.$errortips.'"}).inputvalidator({min:'.$linkageidb.',max:9999,type:"value",onerror:"'.$errortips.'"});';
     
  •                 return menu_linkage($linkageid,$field,$value);
     
  •         }

文件修改也就这两个地方了,下一步就是进入后台,点击右上角的更新缓存

再进入到模型管理里面找到需要进行验证提示的联动菜单字段,在字段设置中把“数据校验未通过的提示信息”这一项填写上内容,比如“请选择**”

转载于:https://www.cnblogs.com/semcoding/p/3358755.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值