• Ajax发送邮件

    普通类
    • 支持
    • 批判
    • 提问
    • 解释
    • 补充
    • 删除
    • Ajax发送邮件
    核心要点

    学习社区中用蒙版发布公告后,先进入后台存储公告内容,如果内容成功存储即公告发布成功,返回页面后再调用ajax发送邮件。

    具体操作

    拿社区发布公告为例:

    1、ajax发布公告

    详见:中蒙版js:$('#create_bulletin').click和发布公告提交js:$('#top_releaseBulletin_OK').click

    2、后台处理,存储公告内容,并返回存储成功与否的状态,success或者fail,以及要发送邮件的接收人和邮件内容。

    详见:createCmBulletinByAjax方法

    3、返回页面后,ajax发送邮件

     //发送email
       function sendEmailByAjax(mailAdds,mailContent,Flag){
               $.ajax({
                url: '/do/cmbulletin?action=CmBulletinSendEmailByAjax',
                type: 'POST',
                data:{mailAdds:mailAdds,mailContent:mailContent,Flag:Flag},
                dataType: 'html',
                timeout: 5000
                });
       }

    4、后台处理发送邮件ajax,不返回状态,不影响前台操作

    /**
         * ajax方式在创建或者编辑一个公告后发邮件
         * @author 胡智杰
         * @param mapping
         * @param form
         * @param request
         * @param response
         * @return
         * @throws Exception
         */
        public ActionForward CmBulletinSendEmailByAjax(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) throws Exception{
            String mailAdds = "";
            String mailContent = "";
            String Flag = "";
            if(request.getParameter("mailAdds") != null && !(request.getParameter("mailAdds").equals(""))){
                mailAdds = request.getParameter("mailAdds");
            }
            if(request.getParameter("mailContent") != null && !(request.getParameter("mailContent").equals(""))){
                mailContent = request.getParameter("mailContent");
            }
            if(request.getParameter("Flag") != null && !(request.getParameter("Flag").equals(""))){
                Flag = request.getParameter("Flag");
            }
            User sessionUser = SessionManager.getUser(request);
            String language=SysConstants.SYS_LANGUAGE;
            if (sessionUser != null) {
                language=sessionUser.getLanguage();
            }
            try {
                
                // 如下部分完成邮件的发送工作
                // 放到try catch语句当中,得考虑进一步把方法封装好
                // 不再使用gmail服务器发送邮件,换用CETV的邮件服务器yxm
                if(mailAdds!=null&&!mailAdds.equals("")){
                    NetEaseUtil client = new NetEaseUtil();
                    client.init();
                    
                    client.sendMessage(client.createMessageByCommunity(mailAdds, mailContent,Flag,language));
                    
                    client.close();
                }
            
            } catch (PersistenceException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return null;
        }

    • 标签:
    • 邮件
  • 加入的知识群:
    学习元评论 (0条)

    评论为空
    聪明如你,不妨在这 发表你的看法与心得 ~



    登录之后可以发表学习元评论
      
暂无内容~~
顶部