DEDEcms织梦自定义表单通过ajax提交实现代码

DEDEcms织梦系统通过自定义表单通过ajax判断,提交不用跳转页面,提高用户体验。具体方法如下:
html表单代码部分,就提交按钮改成botton,,添加onclick事件:

1、表单代码:

<form action="javascript:;" 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" />
 
            <label>姓名:<input type="text" id="name" name="name" value="" /></label>
            <label>电话:<input type="text" id="tel" name="tel" value="" /></label>
            <label>手机:<input type="text" id="iphone" name="iphone" value="" /></label>
            <label>邮箱:<input type="text" id="email" name="email" value="" /></label>
            <table>
              <tr>
                <td valign="top">留言:</td>
                <td><textarea id="liuyan" name="liuyan"></textarea></td>
              </tr>
            </table>
            <input type="hidden" name="dede_fields" value="name,textchar;tel,textchar;iphone,textchar;email,textchar;liuyan,multitext" />
    <input type="button" class="submit fr" value="提 交" onclick="add_ajaxmessage()"/>
</form>

2、js代码(这个代码之前一定要引入jQuery库):

function add_ajaxmessage(){
    var name=document.getElementById("name");
    var tel    =document.getElementById("tel");
    var iphone=document.getElementById("iphone");
    var email=document.getElementById("email");
    var liuyan=document.getElementById("liuyan");
    
    //定义变量接收上面表单每项的值和几个dede隐藏的input的值
    var dataString = 'name='+ name.value + '&tel=' + tel.value + '&iphone=' + iphone.value + '&email=' + email.value + '&liuyan='+ liuyan.value +'&action=post'+ '&diyid=1&do=2&dede_fields=name,textchar;tel,textchar;iphone,textchar;email,textchar;liuyan,multitext';
    $.ajax({
        type: "POST",
        url: "/plus/diy.php", //提交到后台文件
        data: dataString, //传值
        success: function(data) {
 
            alert(data);//成功打印PHP返回的值
        
        }
    });
    return false;
 
}

3、php后端代码:

1.找到:if(!empty($dede_fields))

{
    //在里面加入判断语句,不判断也可以

    if($name==""){    
        echo "请填写您的姓名!";    //注意:输出用echo输出,不要用showMsg();
        exit();
    }
}

2.找到:

$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
$bkmsg = '发布成功,请等待管理员处理...';
这两句,改成:

echo "提交成功!";



删掉下面这一句:

showmsg($bkmsg, $goto);

 

对于 dedecms 自定义表单,您可以通过以下步骤来自定义表单 html: 1. 登录 dedecms 后台,进入“模板管理”->“自定义模板”,创建一个新的自定义模板。 2. 在自定义模板中添加一个表单元素,可以使用 HTML 标签来创建表单,如下所示: ```html <form action="submit.php" method="post"> <label for="name">Name:</label> <input type="text" name="name" id="name"> <br> <label for="email">Email:</label> <input type="email" name="email" id="email"> <br> <input type="submit" value="Submit"> </form> ``` 3. 在自定义模板中添加自定义表单的标签,如下所示: ```html {dede:myform name='form1' formid='1' action='form.php' method='post'} ``` 其中,name 表示表单的名称,formid 表示表单的 ID,action 表示表单提交的地址,method 表示表单提交的方法。 4. 将表单元素添加到自定义表单的标签中,如下所示: ```html {dede:myform name='form1' formid='1' action='form.php' method='post'} <label for="name">Name:</label> <input type="text" name="name" id="name"> <br> <label for="email">Email:</label> <input type="email" name="email" id="email"> <br> <input type="submit" value="Submit"> {/dede:myform} ``` 5. 保存自定义模板,即可在 dedecms 中使用自定义表单。 至于如何用自己的模板来展示自定义表单,可以在自定义模板中添加表单的样式和布局,来美化自定义表单的展示效果。具体的方法可以参考 dedecms 的官方文档或者相关的教程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值