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); }
文件修改也就这两个地方了,下一步就是进入后台,点击右上角的更新缓存
再进入到模型管理里面找到需要进行验证提示的联动菜单字段,在字段设置中把“数据校验未通过的提示信息”这一项填写上内容,比如“请选择**”
推荐:《phpcms教程》
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:www.west.cn
本文链接:https://my.lmcjl.com/post/9966.html
展开阅读全文
4 评论