加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > CMS系统 > Dedecms > 正文

Dedecms织梦jquery+ajax方式提交自定义表单

发布时间:2020-12-14 04:07:33 所属栏目:Dedecms 来源:网络整理
导读:由站长 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。 我们开发 dedecms 模板,接触到织梦的自定义表单是必不可少的,但是默认的自定义表单都是跳转方式完成提交,很不友好,今天我们可以借助 jquery ajax

以下代码由PHP站长网 52php.cn收集自互联网现在PHP站长网小编把它分享给大家,仅供参考

我们开发 dedecms 模板,接触到织梦的自定义表单是必不可少的,但是默认的自定义表单都是跳转方式完成提交,很不友好,今天我们可以借助 jquery ajax 提交 dedecms 自定义表单到后台。此例只做为参考,实际项目中根据自己的情况酌情修改。

html 部分

<form action="/plus/diy.php" enctype="multipart/form-data" method="post" id="diyform">

<input type="hidden" name="action" value="post" />

<input type="hidden" name="diyid" value="1" />

<input type="hidden" name="do" value="2" />

<input type="hidden" name="dede_fields" value="mail_name,text;mail_phone;mail_content,multitext" />

<input type="hidden" name="dede_fieldshash" value="86d34525cf75f8652022f6446152028d" />

<input type="hidden" name="setup" value="ajax" />

<div class="mail_rdd">

<div class="mail_content">

<table border="1" width="100%" class="mail_form">

<tr>

<td width="50">

姓名:

</td>

<td class="mail_input_bg1">

<input type="text" name="mail_name" id="mail_name" maxlength="20"/>

</td>

</tr>

<tr>

<td>

电话:

</td>

<td class="mail_input_bg1">

<input type="text" name="mail_phone" id="mail_phone" maxlength="20"/>

</td>

</tr>

<tr style="height:240px">

<td>

留言:

</td>

<td class="mail_input_bg3">

<textarea name="mail_content" id="mail_content"></textarea>

</td>

</tr>

</table>

<div class="mail_button_bar">

<div class="mail_button confirm" onclick="send()">

</div>

</div>

</div>

</div>

</form>

JS 部分

<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js"></script>

<script>

function send(){

$.ajax({

cache: true,

type: "POST",

url:"/plus/diy.php",

data:$('#mail_form').serialize(),

success: function(data) {

if(data=="success"){

alert('发送成功!');

}else{

alert('发送失败!');

}

}

});

}

</script>

/plus/diy.php 修改找到 showMsg($bkmsg,-1,3000); 改成:

if($setup == 'ajax')

{

echo "success";

exit;

}

else

{

showMsg($bkmsg,3000);

}

如果是 gbk 编码的童鞋,还要修改/plus/diy.php,解决乱码问题找到 $addvalue .= ",'".${$fieldinfo[0]}."'"; 改成:

$addvalue .= ",'".iconv( "UTF-8","gb2312//IGNORE",${$fieldinfo[0]})."'";

$.post 方法

var dataString = {

'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('发送失败!');

}

});

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读