加入收藏 | 设为首页 | 会员中心 | 我要投稿 漯河站长网 (https://www.0395zz.cn/)- 云服务器、混合云存储、网络、内容创作、云渲染!
当前位置: 首页 > 教程 > 正文

织梦用ShowMsg函数提示信息改弹出窗口

发布时间:2022-09-02 10:31:24 所属栏目:教程 来源:互联网
导读:DedeCMS的提示信息默认的是跳转,好处是防止有些浏览器禁止了弹出窗口,但用户体验稍差,可以修改提示信息为弹窗更友好,做两种修改方法: 第一种修改方法 举个表单提交的例子,实现功能: ①表单字段为空,弹出对话框提示信息,不提交表单,返回; ②表单信
   DedeCMS的提示信息默认的是跳转,好处是防止有些浏览器禁止了弹出窗口,但用户体验稍差,可以修改提示信息为弹窗更友好,做两种修改方法:
 
   第一种修改方法
 
    举个表单提交的例子,实现功能:
 
    ①表单字段为空,弹出对话框提示信息,不提交表单,返回;
 
    ②表单信息完整无误,更改点击提交后的跳转为弹出“成功提交”对话框信息,关闭当前窗口并刷新;
 
    了解一下ShowMsg函数
 
    DedeCMS的提示信息是通过ShowMsg函数实现的,一般格式为:
 
    ShowMsg($msg,$gourl,$onlymsg=0,$limittime=0)
 
  打开include/common.func.php,找到ShowMsg函数,结合案例说明:
 
    ShowMsg("成功登录,5秒钟后转向系统主页...","index.php",0,2000);
 
    $msg参数是要返回的信息,也就是提示的问题;
 
    $gourl参数是提示完成后要返回的页面,参数有:
 
    -1 代表返回上一页;
 
    index.php 返回指定的index.php页面;
 
    javascript:window.opener=null;window.open('','_self');window.close(); 关闭当前跳转的提示窗口;
 
    $limittime参数是提示出现的秒数,以毫秒为单位;1000就是1秒。
 
    $onlymsg参数是提示的显示方式,具体参数有:
 
    $onlymsg=0 为0,则以跳转到新页面显示;
 
    $onlymsg<>0 不为0,则以弹出对话框的形式进行显示
 
   如果$gourl为空,或者$onlymsg==1,跳转的页面是空白,因此进行如下修改,找到
 
    $msg = "<script>alert("".str_replace(""","“",$msg)."");</script>";
 
    修改为:
 
    $msg = "<script>history.go(-1);location.reload()</script>";
 
    让$gourl值为1时,就能实现返回上级(历史)页面并刷新,但并不提示任何信息。这样做的好处是:htm页面内编写JS判断字段数据是否规范,不满足条件不能提交,不必提示信息跳转。
 
    结合点击或回车事件
 
  在所需要修改的模板</head>之前增加代码
 
    <script type="text/javascript">
 
    function record(){
 
    alert("更新信息已成功");
 
    }
 
    </script>
 
    对应的提交(确定)按钮,需要增加onclick鼠标点击效果。
 
    <button class="button2" type="submit" onclick="record()">确定</button>
 
    当然如果希望输入某个字段(如name="uname")后回车就需要在对应的input增加代码
 
    <input type="text" id="" name="uname" onkeypress="
 
    if(event.keyCode==13){
 
    record();//执行click事件,多个事件之间用英文的";"隔开
 
    return false;//不执行表单提交
 
    }"/>
 
    第二种修改方法
 
    举个购物车提交的例子,实现功能:
 
    用户提交商品到购物车后不跳转到购物车,直接返回原页面并刷新该页面。
 
    打开include/common.fun.php,找到
 
    if($gourl=='' || $onlymsg==1)
 
    {
 
    $msg = "<script>alert("".str_replace(""","“",$msg)."");</script>";
 
    }
 
    修改为
 
    if($gourl=='' || $onlymsg==1)
 
    {
 
    $msg = "<script>alert("".str_replace(""","“",$msg)."");self.location=document.referrer;</script>";
 
    }
 
    打开plus/posttocar.php,找到
 
    ShowMsg("已添加加到购物车,<a href='car.php'>查看购物车</a>","car.php");
 
    修改为
 
    ShowMsg("已添加加到购物车,<a href='car.php'>查看购物车</a>");
 

(编辑:漯河站长网)

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

    推荐文章
      热点阅读