使用锚标签打开mailto并调用URL

14

我需要通过调用服务来打开默认的邮件客户端,并且需要使用锚标签或纯html来实现这一点。约束条件是我们不能使用javascript来完成相同的操作。

请问有没有任何想法可以完成这个任务?


使用 <a href="mailto:..."></a> 有什么问题吗? - gvee
使用mailto,我需要调用一个URL。 - vaibhav
1
正如我在下面一个答案的评论中提到的那样:如果没有JavaScript,您无法将两个点击事件应用于一个对象。要实现您想要的效果,您需要使用脚本语言。 - gvee
3个回答

41

试试这个:

<a href="mailto:test@test.com">Click to Mail</a>  

这将打开默认的邮件客户端。

编辑:
您可以使用 onClick 函数在新窗口中调用您的 Web 服务 URL,以打开它。

<a href="mailto:test@test.com" target="_blank" onclick="window.open('your WS URL');">Click to Mail</a>

2
@vaibhav 如果没有 JavaScript,锚点标签只能有一个单击操作。它不能同时执行两个动作。 - gvee
@gvee 是正确的。您需要使用JavaScript来在一个点击中完成两件事情。 - Yagnesh Agola
这是我的程序发送的邮件的一部分,所有邮件客户端都不支持JavaScript,因此限制只能使用HTML标记。 - vaibhav
@vaibhav 我添加了一些代码。它将使用onCick事件通过向新窗口传递URL来调用您的ws。 - Yagnesh Agola
1
@gvee 如果您考虑放置两个链接,那就更好了。 - Yagnesh Agola
显示剩余2条评论

5

您可以像这样使用

<a href="mailto:me@domain.com?subject=Call me&body=dummy mail:">
  touch here</a>

试一下


这只会打开邮件客户端,我还需要在点击时调用一个 Web 服务。 - vaibhav
@vaibhav 最好使用JScript。 - Raj the Starter

0

如果你感觉非常非常大胆(并且不介意一个可怕的黑客),你可以尝试一下

<meta http-equiv="refresh" content="1; url=mailto:foo@bar.baz" />

在您的服务页面上使用它可以帮助您。我在FF中进行了简短的检查,发现由于新目标启动了外部程序,页面不会跳转到其他地方。这可能需要对您的服务进行一些重新排列,具体取决于您想要在哪里生成邮件窗口。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接