我正在尝试在ASP.NET页面上的图像上实现延迟加载。问题是我的ASP.NET控件生成如下图像:
<asp:Image ID="imagePath" class="lazy" height="100px" data-original='<%#Utilities.GetImageUrl(DataBinder.Eval(Container, "DataItem.FullImagePath").ToString(), true)%>' src="http://placehold.it/100x100" runat="server" AlternateText='<%#DataBinder.Eval(Container, "DataItem.Name")%>' />
...我的数据原始文件呈现为"~/Content/Products/foo.jpg"
,延迟加载因〜字符而失败。
我真的不知道如何在C#中编程,所以我依靠JS来删除〜字符的每个实例。我怎样才能在js或jquery中实现这一点?我试过了:
$(".lazy").each(function(i){
var url=$(this).attr("data-original");
url.replace("~","");
$(this).attr("data-original",url);
});
......没有运气。 请帮忙。
答案 0 :(得分:0)
尝试这样:
url=url.replace("~","");
$(this).attr("data-original",url);
如果你想删除第一个字符~
url = url.slice(1,url.length);
$(this).attr("data-original",url);
替换所有实例
var re = new RegExp('~', 'g');
url = url.replace(re, '');
$(this).attr("data-original",url);