织梦dedecms自定义表单设置必填项
编辑器打开\plus\diy.php,在第40行左右找到下面代码:
$dede_fields = empty($dede_fields) ? '' : trim($dede_fields);
在这行代码下加入以下代码:.
//增加必填字段判断
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
保存完成后,在表单页面找到这行代码:
<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.设置好后更新就可以看到效果了。
本文标题:《织梦dedecms自定义表单设置必填项》
网址:https://zhangwenbao.com/dedecms-custom-form-settings-required-items-2.html