主页 > 网站建设 > 建站知识 > 织梦dedecms自定义表单必填项验证方法

织梦dedecms自定义表单必填项验证方法

POST TIME:2020-03-30 20:00

先说下,已经试过确定有效:
 
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.保存完成后,在表单页面找到这行代码
 
<form action="/plus/diy.php" enctype="multipart/form-data" method="post">
 
在这行代码之下,加入代码:
 
<input type="hidden" name="required" value="数据字段名,数据字段名" />
 
注意这行代码要修改下,根据你的表单所需要设置的必填项,
 
例如设置“姓名”、“邮箱”为必填项。
 
添加新字段--“表单提示文字”:姓名--“字段名称”:name
 
添加新字段--“表单提示文字”:邮箱--“字段名称”:email
 
此行代码应为:
 
<input type="hidden" name="required" value="name,email" />
 
 
 
这样就把这两个选项设置为必填项了。
 
如果没有填写就提交,会打开窗口提示“带*号的为必填内容,请正确填写”,
 
当然,这一句话可以改成其它的文字。
 
————————————————————
 
网上看到另一种方法,未测试,仅作为资料收藏:
 
【js方法:】
 
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.设置好后更新就可以看到效果了。


收缩
  • 微信客服
  • 微信二维码
  • 电话咨询

  • 400-1100-266