文字控件始终有效
<asp:Literal ID="Literal7" runat="server"
Text="<%$ Resources:ErrorMessages, errorCompanyNotFound %>" />
但是,如果我想在图像中将其用作参数,例如
<img src="blahblah" alt=""
title"<%$ Resources:ErrorMessages, errorCompanyNotFound %>" />
它给出了恼人的错误
不允许使用像''这样的文字表达式。请改用。
如果我尝试通过 Javascript
访问它,也会发生同样的情况var noHit = '<%$ Resources:ErrorMessages, errorCompanyNotFound %>';
有没有人任何想法如何在这种情况下获取全局资源值?
答案 0 :(得分:3)
我能找到正常工作的唯一方法是使用公共方法而不是<%$
调用。
:
public string GetResource(string ResourceName, string ResourceKey)
{
string r = HttpContext.GetGlobalResourceObject(ResourceName, ResourceKey) as string;
if (r == null)
return ResourceKey;
return r;
}
然后就像打电话一样简单:
<img src="blahblah" alt=""
title"<%= GetResource("ErrorMessages", "errorCompanyNotFound") %>" />
和
var noHit = '<%= GetResource("ErrorMessages", "errorCompanyNotFound") %>';
我希望这可以帮助像我这样的人:)
答案 1 :(得分:0)
对于 html 控件,而不是像 asp:Label
这样的 MS 控件,您需要添加 runat="server"
才能访问资源值。
<input type="button" class="btn btn-xs" runat="server" value="<%$ Resources:GlobalResources, resMyValue %>">