我使用以下代码允许我的AngularJS应用程序用户使用他们喜欢的邮件客户端发送电子邮件,但是当我点击"发送"按钮时没有任何反应.有人可以检查我的代码并告诉我这里到底缺少什么?谢谢
<button type="button" ng-click="sendEmail(message.Email, message.subject, message.body)" >Send</button>
Run Code Online (Sandbox Code Playgroud)
控制器代码:
$scope.sendEmail = function(email, subject, body){
var link = "mailto:"+ email
+ "&subject=New email " + escape(subject);
+ "&body=" + escape(body);
window.location.href = link;
};
Run Code Online (Sandbox Code Playgroud)
小智 18
我能想到的两件事可能在这里错了.
首先,Spaces不是主题中的有效字符.你可能不得不用一个替换它%20.
其次,你需要&在主题之前改变一个?.否则,它会尝试向该地址发送电子邮件,包括所有主题和正文参数......
你可以试试这个:
$scope.sendEmail = function(email, subject, body) {
var link = "mailto:"+ email
+ "?subject=New%20email " + escape(subject)
+ "&body=" + escape(body);
window.location.href = link;
};
Run Code Online (Sandbox Code Playgroud)
您可以在此处查看更多信息:http: //en.wikipedia.org/wiki/Mailto
小智 6
如果有人仍在使用upvoted答案,请记住删除主题转义符上的分号.
这个:
+ escape(subject);
Run Code Online (Sandbox Code Playgroud)
应该:
+ escape(subject)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10504 次 |
| 最近记录: |