dedecms自定义表单用js代替联动类型解决联动问题

时间:2022-08-30 08:35:58

最近用DEDECMS完成一个自定义表单,要用到地区的三级级联,地区肯定要使用option下拉框,如果让人一个个填肯定不行,DEDECMS内置的联动类型被注释掉了,网上有解决联动类型的例子,但存在后台信息的是枚举,都是数字,不方便查看,网上的解决方案都不怎么完全,尝试了一下没有成功,自己便采取了比较取巧的方案,用js代替联动类型 

自定义表单的字段的类型都使用单行文本,设置完之后前台查看,并浏览器查看它的源文件。 

例如: 

dedecms自定义表单用js代替联动类型解决联动问题
 

复制代码
代码如下:

<form action="/plus/diy.php" enctype="multipart/form-data" method="post"> 
<input type="hidden" name="action" value="post" /> 
<input type="hidden" name="diyid" value="1" /> 
<input type="hidden" name="do" value="2" /> 
<table style="width:97%;" cellpadding="0" cellspacing="1"> 
<tr> 
<td align="right" valign="top">省份:</td> 
<td><input type='text' name='province' id='province' style='width:250px' class='intxt' value='' /> 
</td> 
</tr> 
<tr> 
<td align="right" valign="top">地级市:</td> 
<td><input type='text' name='city' id='city' style='width:250px' class='intxt' value='' /> 
</td> 
</tr> 
<tr> 
<td align="right" valign="top">市、县级市:</td> 
<td><input type='text' name='country' id='country' style='width:250px' class='intxt' value='' /> 
</td> 
</tr> 
<input type="hidden" name="dede_fields" value="province,text;city,text;country,text" /> 
<input type="hidden" name="dede_fieldshash" value="652e45ca2c11e03bbe75d9f5ab1726ba" /></table> 
<div align='center' style='height:30px;padding-top:10px;'> 
<input type="submit" name="submit" value="提 交" class='coolbg' /> 
<input type="reset" name="reset" value="重 置" class='coolbg' /> 
</div> 
</form> 

修改它的form表单,改成自己所需要的样式,并将province,city,country都改成select的类型,三级级联使用js完成 

如: 

复制代码
代码如下:

<form action="/plus/diy.php" enctype="multipart/form-data" method="post"> 
<input type="hidden" name="action" value="post" /> 
<input type="hidden" name="diyid" value="1" /> 
<input type="hidden" name="do" value="2" /> 
<select id="s_province" name="province"><option value="省份">省份</option></select> 
<select id="s_city" name="city" style="margin-left:20px;"><option value="地级市">地级市</option></select> 
<select id="s_county" name="country" style="margin-left:20px;"><option value="市、县级市">市、县级市</option></select> 
<script type="text/javascript" src="js/area.js"></script> 
<script type="text/javascript">_init_area();</script> 
<input type="hidden" name="dede_fields" value="province,text;city,text;country,text" /> 
<input type="hidden" name="dede_fieldshash" value="652e45ca2c11e03bbe75d9f5ab1726ba" /></table> 
<div align='center' style='height:30px;padding-top:10px;'> 
<input type="submit" name="submit" value="提 交" class='coolbg' /> 
<input type="reset" name="reset" value="重 置" class='coolbg' /> 
</div> 
</form>