怎样给Dedecms织梦网站自定义表单设置必填项

怎样给Dedecms织梦网站自定义表单设置必填项,第1张

{dede:field name='size' runphp='yes'}

$a=explode(",",@me);

@me = "";

foreach($a as $k)

{

@me="<li><input type='radio' name='size' value='$k' id='size' /><a href='javascript:void(0);' class='size_radioToggle'><span class='value'>$k 码</span></a></li>";

}

{/dede:field}

之前帮朋友用织梦写过一个商城的功能,以上代码就可以完成你说的需求

{dede:field name='size' runphp='yes'}

name='size' 就是你的自定义字段, 使用foreach 循环出来

既然你用过kesioncms应该知道模板的绑定洛,你先到织梦后台系统设置将模板风格换成你自定义的名字(当然后台主页模板绑定的路径也要换),你在到根目录下的templets文件下建自定义的模板名字,dedecms里面主页是indexhtm,栏目也都是list_自定义名字htm,而内容页都是article_自定义名字htm,这些可以根据你的栏目名随意设定,设定完了你到后台分别添加栏目,在模板绑定里面可以设定自定义的模板,至于自定义标签在织梦里面用得少(和kesioncms不太一样呵呵,我觉得还是kesiongcms好用),其实都是用系统的标签来调文章,栏目什么的,这个你可以根据帮助文档里面的标签,或者在templets/default下的系统默认模板里面找相应的标签,或者在百度下载dedecms标签进行防站就OK了!顺便说一下cms只要懂一种其它的只要找到模板的位置,我觉得就ok了,至于标签调用网上大把的呵呵!!!

1编辑器打开plusdiyphp

2在40行左右找到此行代码:

$dede_fields=empty($dede_fields)'':trim($dede_fields);

3在这一行代码之下,加入代码,复制的话删掉代码中的空行

//增加必填字段判断

if($required!=''){

if(preg_match('/,/',$required))

{

$requireds=explode(',',$required);

foreach($requiredsas$field){

if($$field==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}else{

if($required==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}

//end

4保存完成后,在表单模版页面找到这行代码:

<formaction="/plus/diyphp"enctype="multipart/form-data"method="post">

在这行代码之下,加入代码:

<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>

注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项

添加新字段--“表单提示文字”:姓名--“字段名称”:name

添加新字段--“表单提示文字”:邮箱--“字段名称”:email

此行代码应为:

<inputtype="hidden"name="required"value="name,email"/>

这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字

网上看到另一种方法,未测试,仅作为资料收藏

js方法:

1先在要发布表单的模板上加

<scriptsrc='你的路径/jsjs'type="text/javascript"></script>

2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:

<!--

$(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,下同

3设置好后更新就可以看到效果了

希望本文所述对大家的dedecms建站有所帮助。

DedeCMS系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCMS支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCMS也支持使用风格的形式使用模板,默认风格是default,它表示系统默认使用{cmspath}/templets/default这个文件夹的模板。

一、概念

1、板块(封面)模板:

指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别IDhtm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。

2、列表模板:

指网站某个栏目的所有文章列表的模板,一般用“list_识别IDhtm”命名。

3、档案模板:

表示文档查看页的模板,如文章模板,一般用“article_识别IDhtm”命名。

4、其它模板:

一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。

二、命名,DedeCMS模板默认命名规则如下

1、模板保存位置:

模板目录:{cmspath}/templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件}。

2、模板文件命名规范:

(1)index_识别IDhtm:表示板块(栏目封面)模板;

(2)list_识别IDhtm:表示栏目列表模板;

(3)article_识别IDhtm:表示内容查看页(文档模板,包括专题查看页);

(4)searchhtm:搜索结果列表模板;

(5)indexhtm:主页模板;

四、二次开发

在V53中已经将标签开发分离出来,可以通过后台[模板]-[标签代码管理],点击“新增加一个新的标签”来创建一个自己的标签,标签文件名为:标签名libphp。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样给Dedecms织梦网站自定义表单设置必填项

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情