【问题标题】:Can a non-embedded resource js file access resource file (.resx)?非嵌入式资源js文件可以访问资源文件(.resx)吗?
【发布时间】:2009-06-10 17:50:11
【问题描述】:

我之前使用嵌入式资源js文件引用了.resx文件。

(通过包含类似

的内容
[assembly: ScriptResource("Applications.Webs.Scripts.HelpModule.js",
 "Applications.Webs.Scripts.Resources.HelpResources", "Resource.HelpResources")]

在页面后面的代码中,其中HelpModule.js是嵌入资源)

我想知道当 js 是内容文件时是否可以访问.resx?到目前为止,我听到了“不”。有谁知道这是否可以做到?

感谢您提前回复。

【问题讨论】:

  • “访问”是什么意思?

标签: c# asp.net javascript


【解决方案1】:

如果您的问题是是否可以在 JavaScript 代码中使用 .resx 中的值,答案是“不能直接”。您必须将 resx 中的资源作为 JavaScript 变量公开,这些变量会随您的响应发出并由浏览器解析,以便在您的 JS 中使用它们。

【讨论】:

  • 我希望有一种“直接的方式”来做到这一点。感谢您的回答!
【解决方案2】:

你可以稍微捏造一下

在将 JS 发送到客户端之前,使用 HttpModule 解析 JS 寻找“标签”。

当您遇到您的标签时,请将其替换为 resx 文件中所需的值...

我最近使用了类似的技术来本地化 JS 文件...

【讨论】:

    【解决方案3】:

    或者,您也许可以使用 AJAX 来稍微混淆一下。如果您构建了一个旨在插入 resx 文件的小方法,则可以异步插入。如果您不想使用所有 Microsoft AJAX 编译的东西(无论出于何种原因),您可以使用一个小型 AJAX 引擎(它们无处不在)并将其连接到 .ashx 处理程序。这样你就可以随时进入编译的 .resx 文件。您只需要愿意接受 AJAX 可能给您带来的任何连接延迟。

    【讨论】:

      猜你喜欢
      • 2013-12-29
      • 1970-01-01
      • 2016-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多