DedeCMS自定義表單總體來說比較好用,特別對要求不是很高的網(wǎng)站來說已經(jīng)足夠了。不用單獨找表單提交插件,減少開發(fā)時間。
DedeCMS默認(rèn)的一些功能并不十分完善,需要二次開發(fā)才符合用戶體驗。
增加會員中心對應(yīng)表單全選功能、自定義表單全選功能和聯(lián)動類別不更新BUG。
會員中心相關(guān)全選功能
開發(fā)DedeCMS會員系統(tǒng)時,遇到一些需要全選功能,這時可以增加在對應(yīng)模板的</head>之前,增加系統(tǒng)默認(rèn)的JS
JS部分(放在</head>之前)
<script type="text/javascript" src="templets/js/table_function.js"></script>
<script type="text/javascript">
//獲得選中文件的文件名
function GetCheckfolderItem(){
var allSel='';
if(document.form1.deleteid.value) return document.form1.deleteid.value;
for(i=0;i<document.form1.deleteid.length;i++){
if(document.form1.deleteid[i].checked){
if(allSel=='')
allSel=document.form1.deleteid[i].value;
else
allSel=allSel+","+document.form1.deleteid[i].value;
}
}
return allSel;
}
//刪除信息
function DoSubmit(){
var selid = GetCheckfolderItem();
if(selid=='') {
alert("你沒選中任何信息!");
return false;
}
if(window.confirm("你確定要刪除這些消息么?")){
//location = "shops_orders.php?dopost=del&ids="+selid; //這部分需要單獨做,如果不需要改功能刪除該function
}
}
</script>
正文部分
GetCheckfolderItem函數(shù)控制的對應(yīng)的check選項卡name="deleteid"如
<input type="checkbox" name="deleteid" value="">
按鈕部分
下面紅色部分不可少,第二個按鈕的刪除選中功能根據(jù)實際需要修改。
<button id="checkedClick" type="button" class="greenBtn1">全選</button> <button type="button" onclick="DoSubmit()" class="greenBtn3">刪除選中</button>
另外一種通用check全選、全不選功能
JS部分(放在</head>之前)
<script language=javascript> function selectAll(){ var a = document.getElementsByTagName("input"); if(a[0].checked){ for(var i = 0;i<a.length;i++){ if(a[i].type == "checkbox") a[i].checked = false; } }else{ for(var i = 0;i<a.length;i++){ if(a[i].type == "checkbox") a[i].checked = true; } } } </script>
正文body部分
<input type="button" name="select" onclick="selectAll()" value="全選/全不選"/>
DedeCMS聯(lián)動類別緩存JS不更新BUG
聯(lián)動類別可以自己增加,但是修改后,更新卻沒有效果,這個BUG解決很簡單
找到/include/enums.func.php,找到
if(empty($issign)) WriteEnumsJs($egroup);
替換為
WriteEnumsJs($egroup);
同一頁面調(diào)用多個相同JS聯(lián)動類別
必要JS下載鏈接:
將上面代碼保存為新的js文件,注意不要覆蓋官方原來的,否則可能因為后續(xù)的多級聯(lián)動菜單添加而反復(fù)修改文件
<script language="javascript" type="text/javascript" src="你自定義的js文件目錄"></script>
這句不多說,注意在頁面的運行腳本中,原來的兩個參數(shù)改成了三個,第一個是聯(lián)動類型的英文名稱,具體請在后臺查看。
第二個參數(shù)是你自定義的id,防止頁面上出現(xiàn)重復(fù)id的現(xiàn)象,第三個參數(shù)是初始選項。
<script language="javascript" type="text/javascript">MakeTopSelect("MyArea","IdName", 0);</script>