我们可以借助jquery ajax提交dedecms自定义表单到后台。
此例只做为参考,实际项目中根据自己的情况酌情修改。
html部分
123456789101112131415161718192021222324252627282930313233343536373839404142<formaction="/plus/diy.php"enctype="multipart/form-data"method="post"id="diyform"><inputtype="hidden"name="action"value="post"/><inputtype="hidden"name="diyid"value="1"/><inputtype="hidden"name="do"value="2"/><inputtype="hidden"name="dede_fields"value="mail_name,text;mail_phone;mail_content,multitext"/><inputtype="hidden"name="dede_fieldshash"value="86d34525cf75f8652022f6446152028d"/><inputtype="hidden"name="setup"value="ajax"/><divclass="mail_rdd"><divclass="mail_content"><tableborder="1"width="100%"class="mail_form"><tr><tdwidth="50">姓名:</td><tdclass="mail_input_bg1"><inputtype="text"name="mail_name"id="mail_name"maxlength="20"/></td></tr><tr><td>电话:</td><tdclass="mail_input_bg1"><inputtype="text"name="mail_phone"id="mail_phone"maxlength="20"/></td></tr><trstyle="height:240px"><td>留言:</td><tdclass="mail_input_bg3"><textareaname="mail_content"id="mail_content"></textarea></td></tr></table><divclass="mail_button_bar"><divclass="mail_buttonconfirm"onclick="send()"></div></div></div></div></form>
js部分
123456789101112131415161718<scripttype="text/javascript"src="http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js"></script><script>functionsend(){$.ajax({cache:true,type:"POST",url:"/plus/diy.php",data:$('#mail_form').serialize(),//你的formidwww.dede58.com织梦模板网success:function(data){if(data=="success"){alert('发送成功!');}else{alert('发送失败!');}}});}</script>/plus/diy.php 修改
找到
1showMsg($bkmsg,-1,0,3000);改成
123456789if($setup=='ajax'){echo"success";exit;}else{showMsg($bkmsg,-1,0,3000);}
如果是gbk编码的童鞋,还要修改/plus/diy.php,解决乱码问题
找到
1$addvalue.=",'".${$fieldinfo[0]}."'";改成
1$addvalue.=",'".iconv("UTF-8","gb2312//IGNORE",${$fieldinfo[0]})."'";
$.post方法
123456789101112131415161718vardataString={'name':$("#name").val(),'tel':$("#tel").val(),'setup':'ajax','action':'post','diyid':1,'do':2,'dede_fields':'name,text;tel,text','dede_fieldshash':'6b5fb808a4b9ea6d0603d983246a88a1',};$.post("/plus/diy.php",dataString,function(result){if(result=="1"){alert('发送成功!');$('#diyform').reset();//重置form}else{alert('发送失败!');}});