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

  1. 表单代码:
  2. <form action=”javascript:;” enctype=”multipart/form-data” method=”post”>
  3. <input type=”hidden” name=”action” value=”post” />
  4. <input type=”hidden” name=”diyid” value=”1″ />
  5. <input type=”hidden” name=”do” value=”2″ />
  6. <label>姓名:<input type=”text” id=”name” name=”name” value=”” /></label>
  7. <label>电话:<input type=”text” id=”tel” name=”tel” value=”” /></label>
  8. <label>手机:<input type=”text” id=”iphone” name=”iphone” value=”” /></label>
  9. <label>邮箱:<input type=”text” id=”email” name=”email” value=”” /></label>
  10. <table>
  11. <tr>
  12. <td valign=”top”>留言:</td>
  13. <td><textarea id=”liuyan” name=”liuyan”></textarea></td>
  14. </tr>
  15. </table>
  16. <input
    type=”hidden” name=”dede_fields”
    value=”name,textchar;tel,textchar;iphone,textchar;email,textchar;liuyan,multitext”
    />
  17. <input type=”button” class=”submit fr” value=”提 交” onclick=”add_ajaxmessage()”/>
  18. </form>

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

  1. function add_ajaxmessage(){
  2. var name=document.getElementById(“name”);
  3. var tel=document.getElementById(“tel”);
  4. var iphone=document.getElementById(“iphone”);
  5. var email=document.getElementById(“email”);
  6. var liuyan=document.getElementById(“liuyan”);
  7. //定义变量接收上面表单每项的值和几个dede隐藏的input的值
  8. 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’;
  9. $.ajax({
  10. type: “POST”,
  11. url: “/plus/diy.php”, //提交到后台文件
  12. data: dataString, //传值
  13. success: function(data) {
  14. alert(data);//成功打印PHP返回的值
  15. }
  16. });
  17. return false;
  18. }

php代码:

找到:if(!empty($dede_fields))
{
//在里面加入判断语句,不判断也可以

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

找到:$goto = !empty($cfg_cmspath) ? $cfg_cmspath : ‘/’;
$bkmsg = ‘发布成功,请等待管理员处理…’;
这两句,改成:echo “提交成功!”;

删掉下面这一句:showmsg($bkmsg, $goto);

发表评论

电子邮件地址不会被公开。 必填项已用*标注