> 萬能表單跟留言模塊(message)是相關聯的,下面我就來詳細介紹如何使用萬能表單功能
留言表單
~~~
<form action="{fun U('message/index')}" onsubmit="return checkform()" method="POST">
<input name="tid" type="hidden" value="{$type['id']}" >
<div class="form-group"><label>*您的稱呼</label><input name="user" id="user" class="form-control" type="text"></div>
<div class="form-group"><label>*您咨詢的問題</label><input name="title" id="title" class="form-control" type="text"></div>
<div class="form-group"><label>*您的手機號</label><input name="tel" id="tel" class="form-control" type="tel"></div>
<!--后臺新增的擴展字段在這里輸出-->
<span id="ext_fields"></span>
<div class="form-group"><label>*問題描述</label><textarea name="body" id="body" class="form-control"></textarea></div>
<div class="form-group"><button class="btn btn-primary btn-block" type="submit">確定發送</button></div>
</form>
<script>
function checkform(){
var user = $.trim($("#user").val());
var title = $.trim($("#title").val());
var email = $.trim($("#email").val());
var tel = $.trim($("#tel").val());
var body = $.trim($("#body").val());
if(user==''){
alert('您的稱呼不能為空~');$("#user").focus();return false;
}
if(title==''){
alert('您的咨詢的問題不能為空~');$("#title").focus();return false;
}
if(tel==''){
alert('您的手機號不能為空~');$("#tel").focus();return false;
}
if(body==''){
alert('問題描述不能為空~');$("#body").focus();return false;
}
return true;
}
function get_fields(tid,id){
var id = arguments[1]?arguments[1]:0;
$.post("{fun U('Common/get_fields')}",{molds:'message',tid:tid,id:id},function(r){
var res = JSON.parse(r);
console.log(res);
if(res.code==0){
//默認 res.tpl輸出的是layui的模板HTML,可以審核元素查看res里面的內容
//$("#ext_fields").html(res.tpl);
var html = '';
var len = res.fields_list.length;
if(len>0){
//根據對應的字段,進行HTML設計
for(var i=0;i<len;i++){
if(res.fields_list[i].field=='email'){
html+='<div class="form-group"><label>您的郵箱</label><input name="email" id="email" class="form-control" type="email"></div>';
}
}
}
$("#ext_fields").html(html);
}
});
}
$(document).ready(function(){
get_fields({$type['id']});
});
</script>
~~~
`$.post()`方法返回的`res.tpl`就攜帶了已經格式化的HTML內容,但是這個HTML是基于layui的,所以如果你要使用官方已經給你格式化的HTML,你需要借助layui,當然也可以自己自定義每個字段的輸出HTML格式,也可以自己定制一套輸出HTML的格式,這需要寫個插件方法,覆蓋(或者hook)掉`Home/CommonController.php` 控制器下面的 `get_fields`這個方法
- 引言
- 條款
- 開始使用
- 模板標簽
- 公共配置
- 系統配置
- 自定義配置
- 網站欄目
- 全局欄目屬性
- 導航欄相關
- 當前欄目下的直系下級
- 當前欄目下的直系上級
- 欄目詳情頁
- 欄目列表頁
- 欄目分頁
- 輸出三級及三級以上欄目
- 當前位置面包屑
- 獲取當前欄目的頂級欄目
- 直播講解欄目相關
- 文章詳情頁
- 基本內容
- 點贊
- 收藏
- 相關文章
- 輸出新增字段
- 商品詳情頁
- 基本內容
- 輸出新增字段
- 商品圖集
- 點贊
- 收藏
- *點評星星
- 加入購物車
- *評論
- 相關商品
- 自定義字段
- 原樣輸出
- 單選字段
- 多選字段
- loop標簽
- 通用說明
- loop分頁
- 案例說明
- like使用
- 怎么判斷loop沒有數據
- limit使用
- day參數
- table缺省參數
- 單選多選相關
- 單選字段輸出
- 多選字段輸出
- 特殊輸出
- 輸出換行
- 替換字符串
- 輸出被解析的HTML原句
- 截取字符串
- 內容body去除HTML
- 分割字符輸出
- 人性化時間顯示
- 搜索功能
- 單模塊搜索
- 多模塊搜索
- 搜索擴展
- 搜索結果列表頁
- 會員模塊
- 判斷是否登錄
- 判斷是否評論
- 計算評論數
- 如果判斷會員組是否權限
- 如何輸出分組信息
- 如何輸出所有用戶分組
- 如何輸出所有會員
- 輸出某個會員發布的內容
- 查詢一個用戶的所有信息
- 輸出我的粉絲列表
- 輸出我的關注列表
- 獲取粉絲數
- 獲取關注數
- 判斷是否關注
- 關注與取消關注鏈接
- 判斷會員是否購買該商品
- foreach標簽
- for標簽
- fun標簽
- php標簽
- 不解析標簽
- if..else..標簽
- screen篩選標簽
- 客戶端判斷
- 輪播圖
- 友情鏈接
- 自定義圖集輸出
- Tags標簽調用及使用說明
- 網站留言調用
- 自定義單頁
- 各種統計
- 各種計數顯示數
- 文章歸檔內容歸檔
- 系統架構
- 高級功能
- ajax數據交互
- ajax在欄目頁的應用
- ajax在screen篩選中的應用
- screen多選篩選
- Message留言表單
- 萬能表單
- 多語言支持
- 系統高級配置說明
- 網站動態鏈接
- 郵件發送
- 自定義路由配置
- 插件開發
- 控制器方法覆蓋(cover)[簡單]
- 控制器方法鉤子(hook)[復雜]
- 制成后臺安裝插件
- 微信小程序
- 開始起步
- 小程序開發
- API訪問接口數據
- 輪播圖(幻燈片)
- 訪問欄目列表
- 詳情頁查詢
- 欄目詳情查詢
- 留言接口
- 附錄
- 時間
- 富文本編輯器導航
- 偽靜態配置
- 二維碼生成
- 常見問題
- 靜態生成HTML頁面失敗問題
- 為什么默認模板打開首頁很慢,而打開后臺卻很快?
- 如何判斷首頁、欄目頁、內容頁、單頁
- 視頻教程
- 版本更新
- 寶塔一鍵部署