2013-07-05 142 views
2

我想發送下面的代碼片段到我的gmail帳戶,但是它不會解析爲我收到的電子郵件中的可點擊鏈接。HTML href鏈接不可點擊

<a href="evernote:///view/XXXXXXX/sXX/f473d94d-ac3d-43d0-a838-0c9f55d622c6/f473d94d-ac3d-43d0-a838-0c9f55d622c6/">Link</a> 

完整的代碼(JavaScript的/谷歌Apps腳本)

function test() { 
GmailApp.sendEmail("[email protected]", "Mail Subject", "",{ htmlBody: "<a href='evernote:///view/XXXXXXX/sXX/f473d94d-ac3d-43d0-a838-0c9f55d622c6/f473d94d-ac3d-43d0-a838-0c9f55d622c6/'>Link</a>"}); 
}; 

當我把代碼段到另一個編輯器(例如http://www.w3schools.com/html/tryit.asp?filename=tryhtml_basic)中,HTML解析爲一個可點擊的鏈接,因爲它應該。

我在這裏錯過了什麼?

(順便說一句<a href=" http://www.link.com">Link</a>正常工作,所以與Evernote的一個問題:/// URL類型)

+0

你可以使用[http://jsfiddle.net/](http://jsfiddle.net/)分享代碼,而不是w3cschools。 – Praveen

回答

1

URL應該有http://https://

0

試試這個

String body= HttpUtility.HtmlDecode("<a href=\"evernote:///view/XXXXXXX/sXX/f473d94d-ac3d-43d0-a838-0c9f55d622c6/f473d94d-ac3d-43d0-a838-0c9f55d622c6/\">Link</a>"); 

通行證字符串主體作爲參數

+0

這個答案不是谷歌應用程序腳本(或JavaScript),它似乎是C++或C# - [HttpUtility](http://msdn.microsoft.com/en-us/library/system.web.httputility。 aspx)是.NET框架的一部分,所以除非這個答案也提出了開發語言和環境的改變,否則這並沒有幫助,應該是downvoted,而不是upvoted。 (沒有什麼個人 - 只是爲了節省觀衆的時間和麻煩。) – Mogsdad

0

evernote:///不是每個人都能理解的協議。即使您在瀏覽器中放置了相同的鏈接,也不會起作用。正如前面的答案所示,您必須將您的href標記鏈接到http://或https://協議。

儘管w3schools頁面創建了一個鏈接,但實際上點擊它時沒有任何反應。

+0

謝謝。實際上,chrome能夠理解w3schools頁面創建的鏈接。點擊會彈出一個「外部協議請求」,一旦您接受,它將在Evernote PC/Mac客戶端中打開正確的註釋。這就是爲什麼我不明白,在Chrome中打開電子郵件時,鏈接不會解析爲Gmail中的可點擊鏈接。 – ThorbenA

+0

GMail網絡客戶端正在清理html正文。如果您導航到電子郵件,然後選擇「顯示原始文件」,您將看到電子郵件的正文包含鏈接,完全按照您製作的鏈接進行。據推測,如果收件人使用其他方式查看郵件,鏈接可能會呈現給他們。 – Mogsdad

+0

Chrome會打開它,因爲您可能有一個截取evernote://協議的擴展名。否則,它不是所有瀏覽器的標準協議。 – Srik