Primefaces链接打开一个电子邮件撰写窗口
Primefaces link open an email compose window
使用JSF Primefaces,我如何在dataTable列上为emailId创建链接,以便onclick打开一个电子邮件撰写窗口?我正在使用Primefaces.3.0.M3和JSF2。
使用HTML标准mailto:
链接语法。您只需要确保生成的HTML链接最终看起来像
<a href="mailto:john.doe@example.com?subject=Some%20subject&body=Some%20body">mail</a>
这可以在JSF中通过例如来实现
<h:outputLink value="mailto:#{user.email}">
<f:param name="subject" value="Some subject" />
<f:param name="body" value="Some body" />
<h:outputText value="mail" />
</h:outputLink>
这些链接将打开客户端的默认邮件组成编辑器。subject
和body
参数是可选的,允许您在电子邮件编辑器中设置默认主题和正文。
坏消息是JSF标记h:outputLink
将主题和正文作为查询参数转义,将空格替换为+
而不是%20
。
好消息是,使用java.net.URI类:可以获得正确的结果
java.net.URI uri = new java.net.URI("mailto", "your@email.com", "subject=Some subject&body=Some body");
String result = "mailto:?" + uri.getRawFragment();
assert result.equals("mailto:?subject=Some%20subject&body=Some%20body");
请注意,构造函数中的前两个参数是不相关的。
您可以在JSF/Primefaces标记的href
属性中使用result
,例如h:outputLink
或p:button
,它打开具有预定义主题和正文以及空收件人地址的默认电子邮件客户端。
相关文章:
- 当单元格内容由于forumula从另一个工作表编译数据而更改时发送电子邮件
- 页面上的2个表单带有JS验证-其中一个抛出电子邮件验证错误
- ASP.Net电子邮件有一个超链接应该在新窗口中打开
- 在使用jquery验证电子邮件之后添加一个类
- 在一个文本框中验证几封电子邮件
- 所有有效的电子邮件是否至少包含一个@符号
- 使用一个表单在页面上使用多个电子邮件地址
- 创建一个类似的“收件人”文本框,该文本框显示在许多基于Web的电子邮件网站上
- 从另一个网页以 HTML 格式通过电子邮件发送当前购物车
- 尝试使用mailgun发送电子邮件时获得“类型错误:未定义不是一个函数”
- 尝试制作一个脚本,如果值低于 60%,则扫描 Google 表格和电子邮件
- 下一个单元格上可自动点击的电子邮件地址.应用程序脚本
- 一个简单的jquery片段来验证用户'的电子邮件地址
- 我想根据他们输入的域验证电子邮件.正在检查最后一个域为.com
- 正则表达式,用于验证电子邮件前面的一个分号
- 寻找一个不引人注目的“;给朋友发电子邮件“;类型
- 在一个字段中写几封电子邮件
- 电子邮件表单验证-确保它只有一个'@'象征
- 我想保存到mysql数据库,发送一封电子邮件,然后做一个帖子,所有这些都使用一个按钮
- Primefaces链接打开一个电子邮件撰写窗口