一般制作反馈表单都会设置有必填项,比如姓名、电话等,但是默认的dedecms自定义表单却没有必填项的设置,如果要设置织梦自定义表单的必填项,需要进行额外的修改!
方法一:通过修改程序源文件实现
1、在plus文件夹下找到diy.php文件,对其进行编辑,在第40行左右找到代码:
$dede_fields=empty($dede_fields)?'':trim($dede_fields);
2、在这行代码下面,添加以下代码后保存文件://增加必填字段判断
if($required!=''){
if(preg_match('/,/',$required)){
$requireds=explode(',',$required);
foreach($requiredsas$field){
if($$field==''){
showMsg('带*号的为必填内容,请正确填写','-1');
exit();
}
}
}else{
if($required==''){
showMsg('带*号的为必填内容,请正确填写','-1');
exit();
}
}
}
//end3、在创建的自定义表单中找到代码:
<formaction="/plus/diy.php"enctype="multipart/form-data"method="post">
4、在这行代码下面,添加代码:
<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>
注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项。添加新字段–“表单提示文字”:姓名–“字段名称”:name添加新字段–“表单提示文字”:邮箱–“字段名称”:email如:
<inputtype="hidden"name="required"value="name,email"/>
5、保存后,必填项设置完成,当用户提交表单时间,系统检查到必填项没有输入内容,就会提示“带*号的为必填内容,请正确填写”。
方法二:通过javascript脚本代码实现检测
1、把以下代码保存为bitian.js文件:
$(document).ready(function(){
//验证
$('#complain').submit(function(){
if($('#name').val()==""){
$('#name').focus();
alert("用户名不能为空!");
returnfalse;
}
if($('#tel').val()==""){
$('#tel').focus();
alert("联系电话不能为空!");
returnfalse;
}
if($('#title').val()==""){
$('#title').focus();
alert("标题不能为空!");
returnfalse;
}
if($('#text').val()==""){
$('#text').focus();
alert("具体内容不能为空!");
returnfalse;
}
})
});提醒:
$('#complain').submit(function ()//complain为自定义表单的ID,如果生成的表单没有可以自行加上,即 id="complain"
if($('#name').val()==""){$('#name').focus();//#name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同
2、在表单模板文件中添加调用代码:
<scriptsrc='文件路径/js.js'type="text/javascript"></script>
3、保存后,重新生成网页!
