自定義表單在dedecms中通常用來做一睦簡單的數據提交或收集功能了,下面我們來看一個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($requireds as $field){
- if($$field==''){
- showMsg('帶*號的為必填內容,請正確填寫', '-1');
- exit(); //Vevb.com
- }
- }
- }else{
- if($required==''){
- showMsg('帶*號的為必填內容,請正確填寫', '-1');
- exit();
- }
- }
- }
- //end
3、在創建的自定義表單中找到代碼:
<form action="/plus/diy.php" enctype="multipart/form-data" method="post">
4、在這行代碼下面,添加代碼:
<input type="hidden" name="required" value="數據字段名,數據字段名" />
注意這行代碼要修改下,根據你的表單所需要設置的必填項,例如設置“姓名”、“郵箱”為必填項。
添加新字段–“表單提示文字”:姓名–“字段名稱”:name
添加新字段–“表單提示文字”:郵箱–“字段名稱”:email
如:<input type="hidden" name="required" value="name,email" />
5、保存后,必填項設置完成,當用戶提交表單時間,系統檢查到必填項沒有輸入內容,就會提示“帶*號的為必填內容,請正確填寫”.
方法二:通過javascript腳本代碼實現檢測.
1、把以下代碼保存為bitian.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;
- } //Vevb.com
- })
- });
提醒:
$('#complain').submit(function ()//complain為自定義表單的ID,如果生成的表單沒有可以自行加上,即 id="complain"
if($('#name').val()==""){$('#name').focus(); //#name為要驗證表單中的ID,如想讓用戶名不能為空,在后臺用戶名的數據字段名設為name,下同.
2、在表單模板文件中添加調用代碼:
<script src='文件路徑/js.js' type="text/javascript"></script>
3、保存后,重新生成網頁!
注意:直接復制代碼時,標點引號需保證是英文狀態下的.
新聞熱點
疑難解答