SharePoint发布网站电子邮件编码/解码
-
05-09-2019 - |
题
我正在我公司网站上构建一个用于员工信息的SharePoint(MOSS)发布网站。我有一个员工内容类型,正在使用“联系电子邮件地址网站”列来存储员工的电子邮件地址。
我想要的是能够在运行时编码电子邮件地址的能力,以防止垃圾邮件发送者收获真实的电子邮件地址。当用户单击电子邮件超链接时,这将被解码,例如,以下HTML将发送到浏览器:
<a href="javascript:sendEmail('5237952A6F67618E407373772E6063212E6175')">Email Jonny</a>
我已经有了用于从上面的毫无意义的字符串中编码/解码文本值的JavaScript方法,但是不太确定如何使用SharePoint对此进行牢记。我在想自定义控件和/或自定义的j Query?
任何帮助将非常感激!
乔尼
解决方案
在您无法将用户放入广告中的情况下 自定义字段控制 将使您能够包括所需的自定义渲染(jQuery)以及作为“正常”文本输入数据的能力。
自定义字段曾经在需要显示该字段的任何位置定义“ Just just Work”。
鉴于您正在考虑使用jQuery,因此问题将成为确保在需要我们的字段时正确链接jQuery库的问题之一。
其他提示
如果您使那些员工的网站成员,SharePoint会解决这个问题。
您可以将电子邮件发送给他们,但是只有在发送时间添加一个按钮给某人发送电子邮件时,电子邮件地址才会使用,它不会显示电子邮件地址,该电子邮件地址在后端处理。
SPUtility.SendEmail(SPContext.Current.Web, false, false,
[SPUser.Email][1], "E-mail title",
"E-mail body");
(资源: msdn.com)
您可以尝试的另外两种选项/方法:
(1)实现自定义的TextField控件,从Microsoft.sharepoint.webcontrols.textfield和Override Renderfieldfordisplay继承
然后在代码中 - 编码显示字段以进行显示。
将此控件添加到SAFECORTOLS中,并代替Pagelayout中普通的Textfield。
(2)使用现有的TextField控件,但使用jQuery在EditMode中的TextField旁边注入一个按钮[ENCODE]。
使用JavaScript编码方法来编码用户输入的内容中的内容,以替换现有的TextField值。然后他们可以将其保存到SharePoint中。
我会根据您的部署方案对方法进行评分 - NAT的方法是最干净,但可能更涉及部署,而仅JQuery的方法似乎很容易,但在部署方面很容易。覆盖文本方法可能会位于中间的某个地方。