1.编辑器打开\plus\diy.php
2.在40行左右找到此行代码:
$dede_fields = empty($dede_fields) ? '' : trim($dede_fields);
3.在这一行代码之下,加入代码,复制的话删掉代码中的空行.

//增加必填字段判断
if($required!=''){
if(preg_match('/,/', $required))
{
$requireds = explode(',',$required);
foreach($requireds as $field){
if($$field==''){
showMsg('带*号的为必填内容,请正确填写', '-1');
exit();
}
}
}else{
if($required==''){
showMsg('带*号的为必填内容,请正确填写', '-1');
exit();
}
}
}
//end
4.保存完成后,在表单模版页面找到这行代码:
1
<form action="/plus/diy.php" enctype="multipart/form-data" method="post">
在这行代码之下,加入代码:
1
<input type="hidden" name="required" value="数据字段名,数据字段名" />
注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项.
添加新字段--“表单提示文字”:姓名--“字段名称”:name
添加新字段--“表单提示文字”:邮箱--“字段名称”:email
此行代码应为:
1
<input type="hidden" name="required" value="name,email" />
这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带*号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字.

上述方法已经测试。能成功解决织梦cms自定义表单字段为必填项问题。

网上看到另一种方法,未测试,仅作为资料收藏.
js方法:
1.先在要发布表单的模板上加
1
<script src='你的路径/js.js' type="text/javascript"></script>
2.在你自定义的路径新建文件js.js,然后复制以下内容粘贴保存,代码:

<!--
$(document).ready(function()
{
//验证
$('#complain').submit(function ()
{
if($('#name').val()==""){
$('#name').focus();
alert("用户名不能为空!");
return false;
}
if($('#tel').val()=="")
{
$('#tel').focus();
alert("联系电话不能为空!");
return false;
}
if($('#title').val()=="")
{
$('#title').focus();
alert("标题不能为空!");
return false;
}
if($('#text').val()=="")
{
$('#text').focus();
alert("具体内容不能为空!");
return false;
}
})
});
-->
注:

$('#complain').submit(function () //complain为自定义表单的ID,如果生成的表单没有可以自行加上,即 id="complain".
if($('#name').val()==""){
$('#name').focus();//#name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同.
3.设置好后更新就可以看到效果了.
希望本文所述对大家的dedecms建站有所帮助。

如何设置织梦cms自定义表单字段为必填项的更多相关文章

  1. 织梦DedeCMS自定义表单提交成功后返回当前页面的教程

    织梦的自定义表单制作的留言,报名等功能,提交成功后会自动返回到首页,那么如何让它返回到当前页面呢? 方法如下: 打开plus/diy.php文件 找到 showmsg($bkmsg, $goto); ...

  2. 织梦dedecms自定义表单设置必填项

    1. 用php验证 在plus/diy.php的第 40行下加 //增加必填字段判断 if($required!=''){ if(preg_match('/,/', $required)) { $re ...

  3. 织梦dedecms自定义表单导出到excel教程

    不写死任何字段,不写死任何东西,修改2个文件,让织梦自定义表单自由导出到Excel表格里. 添加教程 1.\dede\templets\diy_main.htm 找到 前台预览</a> 在 ...

  4. 织梦DedeCMS自定义表单diy_list.htm

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 织梦DedeCMS自定义表单限制IP24小时只能提交多少次

    方法1.打开plus/diy.php,找到一下代码, if(!is_array($diyform)) { showmsg('自定义表单不存在', '-1'); exit(); } 然后再在以下代码后面 ...

  6. Django之表单字段的选填与后台界面的管理

    参考: http://www.crazyant.net/1005.html http://gmingzhe.blog.51cto.com/810664/163051 所有的字段,默认blank=Fal ...

  7. 如何设置dedecms自定义表单必填项?

    用dedecms自定义表单可以制作一个简单的预约系统,有些相关信息需要设置为必填项,比如联系方式,没有留下真实的电话或其他信息,以后要怎么联系到你的客户.那我们要如何设置织梦cms自定义表单必填项呢? ...

  8. dede表单修改默认必填

    默认的dedecms自定义表单却没有必填项的设置,如果要设置织梦自定义表单的必填项,需要进行额外的修改! 方法一:通过修改程序源文件实现 1.在plus文件夹下找到diy.php文件,对其进行编辑,在 ...

  9. 织梦CMS(dedecms)栏目属性及系统封面模板、列表模板、文章模板区别和路径设置解答

    问题一:(织梦"栏目管理"的"常规选项"中3个栏目属性分析?) 织梦CMS的栏目属性分成三种, -->最终列表栏目 -->频道封面 -->外部 ...

随机推荐

  1. git的个人配置

    一..gitconfig存储在当前用户所在文件目录下,如图1.1. 图1.1 二.git拉取代码的服务器.用户名.密码,存储的所在位置,如图1.2. 图1.2 三.是否保存密码,由.gitconfig ...

  2. onConfigurationChanged方法的使用

    在日常生活中,手机会有很多种配置放生改变的情况,当然,有些时候需要监听他们并对他们进行处理,这就涉及到了onConfiguration方法的使用,我大致说一下,这个方法需要发生在屏幕切换横竖屏,或者选 ...

  3. 用react重构个人网站 3-23

    1:  :before 选择器在被选元素的内容前面插入内容 2:  float是什么?浮动在CSS中的作用 3:CSS运用在React中的两种方式 使用className属性,CSS内容就用link加 ...

  4. vue2.0组件通信小总结

    1.父组件->子组件 父组件 <parent> <child :child-msg="msg"></child>//这里必须要用 - 代替 ...

  5. JS奇淫巧技:防抖函数与节流函数

    应用场景 实际工作中,我们经常性的会通过监听某些事件完成对应的需求,比如: 通过监听 scroll 事件,检测滚动位置,根据滚动位置显示返回顶部按钮 通过监听 resize 事件,对某些自适应页面调整 ...

  6. Python模拟登陆万能法-微博|知乎

    Python模拟登陆让不少人伤透脑筋,今天奉上一种万能登陆方法.你无须精通HTML,甚至也无须精通Python,但却能让你成功的进行模拟登陆.本文讲的是登陆所有网站的一种方法,并不局限于微博与知乎,仅 ...

  7. selenium+java破解极验滑动验证码的示例代码

    转自: https://www.jianshu.com/p/1466f1ba3275 selenium+java破解极验滑动验证码 卧颜沉默 关注 2017.08.15 20:07* 字数 3085  ...

  8. golang string和[]byte的对比

    golang string和[]byte的对比 为啥string和[]byte类型转换需要一定的代价?为啥内置函数copy会有一种特殊情况copy(dst []byte, src string) in ...

  9. diskqueue.go

    }

  10. Go性能优化小结

    1 内存优化 1.1 小对象合并成结构体一次分配,减少内存分配次数 做过C/C++的同学可能知道,小对象在堆上频繁地申请释放,会造成内存碎片(有的叫空洞),导致分配大的对象时无法申请到连续的内存空间, ...