使用JSF-Primefaces如何在emailId的dataTable列上创建链接,以便onclick将打开电子邮件撰写窗口? 我在JSF2中使用Primefaces.3.0.M3。Primefaces链接打开电子邮件撰写窗口
3
A
回答
14
使用HTML标准mailto:
link syntax。你只需要确保生成的HTML链接结束了看起来像
<a href="mailto:[email protected]?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
参数是可选的,并允许您在电子邮件编辑器中设置默认主题和正文。
1
坏消息是,JSF标记h:outputLink
将主题和主体作为查询参数进行转义,用+
而不是%20
替换空格。
的好消息是,你可以用java.net.URI类实现正确的结果:
java.net.URI uri = new java.net.URI("mailto", "[email protected]", "subject=Some subject&body=Some body");
String result = "mailto:?" + uri.getRawFragment();
assert result.equals("mailto:?subject=Some%20subject&body=Some%20body");
注意,在构造函数中的前两个参数是不相关的。
您可以在href
属性您的JSF/Primefaces标签,使用result
如h:outputLink
或p:button
与预定义的主题和内容,空接收地址打开默认的电子邮件客户端。
相关问题
- 1. 如何强制在新窗口打开电子邮件链接
- 2. 电子邮件链接可在新窗口中打开吗?
- 3. 如何在字段中打开sugarcrm的撰写电子邮件弹出窗口?
- 4. 在现有的打开窗口中打开电子邮件链接
- 5. 撰写电子邮件嗅探器
- 6. 作出超链接撰写新的电子邮件与接收的电子邮件指定
- 7. 问题在打开撰写邮件
- 8. 如何打开撰写邮件?
- 9. 与链接的HTML电子邮件,HTML电子邮件的情况下打开
- 10. 打开默认的电子邮件上UWP电子邮件超链接
- 11. 如何用电子在新窗口中打开哈希链接(#)?
- 12. 如何打开黑莓电子邮件应用程序,准备撰写给定地址的电子邮件?
- 13. 用户点击邮件中的链接,它打开电子邮件客户端,如何关闭窗口/标签?
- 14. 打开多个Outlook窗口使用C#发送电子邮件
- 15. 从Outlook中打开Outlook窗口中的电子邮件
- 16. 打开Outlook窗口发送电子邮件asp.net
- 17. 电子邮件链接到本地窗口资源与空间
- 18. 通过电子邮件链接打开iPhone应用程序
- 19. 从短信/电子邮件链接打开应用程序
- 20. 电子邮件链接打开iframe和变化源
- 21. 电子邮件链接无法在outlook上打开
- 22. 访问链接与泊坞窗撰写
- 23. 邮件链接不打开,如果太多的电子邮件地址
- 24. jquery链接打开模式窗口
- 25. 在新窗口中打开链接
- 26. 在新窗口中打开链接
- 27. 在新窗口中打开链接
- 28. 的fancybox链接打开主窗口
- 29. 在新窗口中打开HTML链接
- 30. Markdown打开一个新窗口链接
通过使用JSF方法,它会分别转移我的主题和主体:“Some +主题”和“Some +主体”。无论如何要解决这个问题(这将使更优雅的解决方案)? – blo0p3r 2013-08-12 18:37:00
同样的问题在这里,没有解决方案。 – LStrike 2014-03-27 10:38:33
只需按“问题问题”按钮? – BalusC 2014-03-27 11:06:29