帝国论坛帝国网站管理系统交流区帝国CMS使用交流[分享] js 隐藏多余表单,方便自定义模型。 【本版专题贴子】  
 1/3     1 2 3 ›› ›|
主题:[分享] js 隐藏多余表单,方便自定义模型。 [加入收藏夹]   

星空夜雨
用户头衔:秀才

精华贴   :0
发贴数   :134
经验值   :506
注册时间:2009-05-04
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[分享] js 隐藏多余表单,方便自定义模型。
    帝国强大的自定义模型相信都很多人在用,但不知你们有没有发现在定义一个产品模型的同时,有着个别参数未必每个型号的产品都有的。例如定义一个电脑主板的模型,有的主板是集成显声网卡的,有的即只集成声网卡从而出现多余的显卡字段,有的主板带硬件监控有的即没有,制作内容模型就更加麻烦了。为空的字段显示在前台也不太美观,而且显得页面信息不够完整。

    下面介绍一下我的处理方法,就是利用js隐藏多余的表单。

以下是内容页面表格代码(注意红色部分)

//(1)==================================================》

<TR>
  <TD class=param_td bgColor=#f1f7fc id=param_1705_1  colSpan=2><B>板型</B></TD>
</TR>
<TR>
  <TD class=param_td1 id=param_1705_1 vAlign=center align=left width=100 ><a href="http://www.it0668.com/news-terms/124568046124.html" target="_blank">主板板型</a></TD>
  <TD class=param_td2 id=param_1705_2
     width=450
    bgColor=#ffffff>[!--plate--]</TD>
</TR>
<TR>
  <TD class=param_td1 id=param_1705_1 vAlign=center align=left width=100 >外形尺寸</TD>
  <TD class=param_td2 id=param_1705_2
     width=450
    bgColor=#ffffff>[!--size--]</TD>
</TR>

//=====================================================》

JS代码(加入内容模板任意地方即可。)
//(2)==========================================》
<script language=javascript>
var j=document.getElementsByName("param_1705_1");
var n;var m;var sab;
for(var i=0; i<j.length; i++){
if(j[i].className=="param_td"){
        if (sab)j[m].parentNode.style.display="none";//无内容
        sab=1;m=i; }//状态初始,记录ID
else{       
        n=j[i].nextSibling.innerHTML;
        if (n == "" || n==" " || n=="0" ){j[i].parentNode.style.display="none";
if(i==(j.length-1))j[m].parentNode.style.display="none";//最后一个
        }        else{sab=0;}//有内容
        /*
        //n=j[i].parentNode.nextSibling.children(1).innerHTML;
        /*alert(e.message); return false; */        
        //By YuqiDai@Gmail.com
}}</script>

//========================》




这样处理起来非常简单,但不是最好的方法,却是最懒的做法。


最后增加一个演示连接:http://www.it0668.com/10/20090530/124365399573.html 大家可以看源代码就显得更加容易理解了。



效果看附件图:

上传以下图片:


[该贴被修改 3 次,最后修改时间 2009-08-19 22:55:54 ]



2009-08-19 20:43:38 已设置保密 顶部 回复 引用 报告 编辑 删除

anyboo
用户头衔:进士

精华贴   :0
发贴数   :913
经验值   :4022
注册时间:2008-06-20
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

学习了………………



潍坊百姓网|荣成信息港|考研路|潍坊在线
2009-08-19 20:51:16 已设置保密 顶部 回复 引用 报告 编辑 删除

ljzxh
用户头衔:举人

精华贴   :0
发贴数   :155
经验值   :891
注册时间:2009-06-03
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

不错,学习了...




2009-08-19 21:24:46 已设置保密 顶部 回复 引用 报告 编辑 删除

飞蓝
用户头衔:进士

精华贴   :0
发贴数   :940
经验值   :2994
注册时间:2006-12-04
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

楼主的产品库不错,报价模型也不错呀,给点思路指点下呀




2009-08-19 21:39:13 已设置保密 顶部 回复 引用 报告 编辑 删除

星空夜雨
用户头衔:秀才

精华贴   :0
发贴数   :134
经验值   :506
注册时间:2009-05-04
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

原帖由 飞蓝 于 2009-08-19 21:39:13 发表
楼主的产品库不错,报价模型也不错呀,给点思路指点下呀


独立建一个模型专门放报价(例如:xxx_price),会员报价的同时要针对产品的表、ID发布。再用灵动标签按表按ID调用到产品内容页面即可。

[该贴被修改 1 次,最后修改时间 2009-08-19 22:53:30 ]



2009-08-19 22:52:33 已设置保密 顶部 回复 引用 报告 编辑 删除

飞蓝
用户头衔:进士

精华贴   :0
发贴数   :940
经验值   :2994
注册时间:2006-12-04
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

谢谢!
有空好好研究!
楼主产品对比和刷选功能什么时候放个 教程上来分享下




2009-08-19 23:40:41 已设置保密 顶部 回复 引用 报告 编辑 删除

91cms
用户头衔:举人

精华贴   :0
发贴数   :440
经验值   :1194
注册时间:2008-10-10
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

不错




2009-08-20 07:23:00 已设置保密 顶部 回复 引用 报告 编辑 删除

bluefish777
用户头衔:秀才

精华贴   :0
发贴数   :75
经验值   :341
注册时间:2008-12-09
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

好办法啊




2009-08-20 07:42:25 已设置保密 顶部 回复 引用 报告 编辑 删除

huilan
用户头衔:探花

精华贴   :0
发贴数   :3947
经验值   :9790
注册时间:2009-02-04
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

好东西,支持




2009-08-20 08:37:36 已设置保密 顶部 回复 引用 报告 编辑 删除

500919
用户头衔:探花

精华贴   :0
发贴数   :11660
经验值   :31188
注册时间:2009-03-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

收藏




2009-08-20 08:52:54 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/3     1 2 3 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1