我正在尝试将多种用途的 gravatar 显示在一个页面中,为此我正在使用 foreach 循环。此外,我正在使用淘汰赛 js 来获取电子邮件和姓名等信息,并以 json 形式返回。由于我不能将剃刀与 gravatar 一起使用,因为它要求将字符串作为电子邮件传递,而我所拥有的将返回“data-bind="text:Email"
我正在尝试使用 MD5 概念,我对此很陌生,不确定我是否遵循正确的步骤。我从谷歌代码在线找到了这个:http: //www.devcurry.com/2012/06/retrieving-gravatar-using-jquery.html
我试图实现但不确定我的代码是否正确编写:
我的 javascript 的一部分与我正在做的事情有关:
$.views.Games.UserViewModel = function (data) {
var self = this;
self.Name = ko.observable(data.Name);
self.Email = ko.observable(data.Email);
self.Hash = CryptoJS.MD5(Email);
};
我的浏览页面:
<img alt="Gravatar" title="My Gravatar" data-bind="attr:{href:'http://www.gravatar.com/avatar/' +Hash()+'?s=30&d=identicon&r=G'}" />
有了这个,我没有得到一个 gravatar 来显示。非常感谢任何有用的信息或提示。
代码更新
我改变了,所以它看起来是这样的:
查看模型
public string MD5Email { get{ return Email.MD5Hash(); } }
javascript
self.MD5Email = ko.observable('http://www.gravatar.com/avatar/' + data.MD5Email + '?s=30&d=identicon&r=G');
查看页面
<img width="158" height="158" alt="Gravatar" data-bind="attr:{'src':MD5Email()}"/>