lihfxy
2016-03-11 08:37
采纳率: 47.8%
浏览 12.8k
已采纳

JSP页面的onclick()怎样调用Java方法?

 @RequestMapping("/mail")
public class Mail {
    @RequestMapping("/mailto")
    public void mail(){

      MailSenderInfo mailInfo = new MailSenderInfo(); 
      mailInfo.setMailServerHost("smtp.yeah.net"); 
      mailInfo.setMailServerPort("25"); 
      mailInfo.setValidate(true); 
      mailInfo.setUserName("123456"); 
      mailInfo.setPassword("456789");
      mailInfo.setFromAddress("123456@yeah.net"); 
      mailInfo.setToAddress("132456@163.com"); 
      mailInfo.setSubject("有新申请"); 
      mailInfo.setContent("content"); 

      SimpleMailSender sms = new SimpleMailSender();
         sms.sendTextMail(mailInfo); 

    }
}

这是我一个Java类中的一个方法,是用来发送邮件的,现在我想在一个JSP页面中添加一个button,并且在点击时调用这个方法

 <input type="button" value="发送邮件" onclick="mail()">

请问我的后台方法function mail()应该怎么写呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

10条回答 默认 最新

  • ArrAy_1 2016-03-11 08:42
    已采纳

    mail()是你用javascript写的一个function。你可以在这个function里面写一个ajax方法,在ajax方法的url里面写你后台的方法就可以访问了,这是异步。
    还有就是提交from表单。

    点赞 打赏 评论
  • Yiran8935 2016-03-11 08:41

    传参调用ajax请求啊

    点赞 打赏 评论
  • 用ajax请求jsp页面,jsp页面调用你的这个发邮件函数,要调用服务器端资源或者方法必须请求服务器才行

    http://www.w3school.com.cn/jquery/ajax_ajax.asp

    点赞 打赏 评论
  • 啊嘎嘎的风格 2016-03-11 08:58

    异步的用ajax请求,不异步的话你在js方法里写
    function mail(){
    window.location = "项目路径/mail/mailto";
    }

    点赞 打赏 评论
  • Royal_lr 2016-03-11 09:16

    发请求,,form表单可以,,ajax也可以,,或者使用原生的js发送http请求

    点赞 打赏 评论
  • Run丶Boy 2016-03-11 09:37

    如果用ajax请求的话:
    function mail(){
    var xhr;
    xhr = new XMLHttpRequest();
    xhr.open("Get", "项目路径/mail/mailto", true);
    }
    如果不用就用上边@花落勿痕的就行了
    不过我看你的代码应该是用了springmvc,如果你的web配置文件是接收*.do的话你的url得写成”项目路径/mail/mailto.do"同时你代码这里
    @RequestMapping("/mailto")也要改成@RequestMapping("/mailto.do")

    点赞 打赏 评论
  • 香烟love彬 2016-03-11 09:46

    如果你java代码中jsp中又想调用可以试试小脚本<%java代码%>

    点赞 打赏 评论
  • 香烟love彬 2016-03-11 09:51

    在jsp中调用 java代码要先引用java的包哦:如<%@ page import= "www.com.要调用的java类 "%>写在jsp最上面然后:
    <%
    Mail mails = new Mail();
    mails.mail();
    %>这里面就可以写java代码,不知道这样行不行勒。。

    点赞 打赏 评论
  • qq_18277503 2016-03-12 07:35

    就是使用ajax进行异步请求,在url中调用后台方法即可

    点赞 打赏 评论
  • beaconD 2016-03-12 09:12

    ajax请求,访问后台方法就可以

    点赞 打赏 评论

相关推荐 更多相似问题