使用page或httphandler输出javascript变量

发布于 2024-11-17 11:33:02 字数 365 浏览 2 评论 0原文

我有一些 javascript 变量想要包含在 asp.net 页面中。这些都是用代码构建的。我在客户端代码中使用这些变量。

我想知道更好的方法。

A. 创建一个 httphandler 来处理变量的逻辑,并且处理程序返回 javascript。对处理程序的引用包含在母版页

B 中。母版页代码后面处理变量的逻辑并在页面标记中返回。

每个页面都需要这些变量。

我想知道从性能和最佳实践的角度来看哪种方法是最好的方法。

我喜欢这个处理程序的原因是它意味着标记中不包含 javascript,完全分离。但处理程序的缺点是,这意味着额外的 http 请求,并且在处理处理程序时可能会减慢页面渲染速度。

意见?

I have some javascript variables that I want to include in an asp.net page. These are built up in code. I am using these variables in my client side code.

I am wondering is the better approach.

A. Create a httphandler that processes the logic for the variables and handler returns javascript. A reference to handler is included in the master page

B. Master page code behind processes the logic for the variables and returns in the pages markup.

These variables are required on every page.

I am wondering which is the best approach from a performance and best practise point of view.

Reason I like the handler is that it means no javascript is included with markup, total seperation. But the drawback of the handler is that it means an extra http request and may slow down page rendering while the handler is processed.

Opinions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

瞄了个咪的 2024-11-24 11:33:02

有趣的问题。通常,我将变量输出到自定义命名空间(全局对象)中,这基本上是您的选项 B,但我不能说我这样做有具体原因,除了从未考虑过创建自定义 httpHandler!

Interesting question. Typically, I output the variables into a custom namespace (global object) which is basically your option B, but I can't say I have specific reasons for doing so other than having never thought about creating a custom httpHandler!

浅暮の光 2024-11-24 11:33:02

我假设 javascript 的生成将由通用模块处理,因此任一选项都可能合适。

对处理程序的额外调用不太可能导致任何明显的开销。我们使用它们来处理数据库中的图像,没有任何问题。

基于上述内容,我个人会使用处理程序,因为它是一个更优雅的解决方案,尽管有点复杂。

I am assuming that the generation of the javascript would be handled by a common module and therefore either option could be suitable.

It is unlikely that the additional call to the handler would cause any noticable overhead. We use these for handling images from our database with no issues.

Based on the above, I personally would use the handler, because it is a more elegant solution, albeit a little more complicated.

眼中杀气 2024-11-24 11:33:02

处理程序选项似乎更优雅,但在服务器或客户端甚至某些代理上缓存可能会给您带来一些麻烦。我会说选择简单的。

Handler option seems to be more elegant but it may cost you some trouble beeing cached on server or client side or even at some proxies. I would say go with the simple one.

二智少女 2024-11-24 11:33:02

您可以使用 HttpModule 将 JavaScript 直接写入响应输出。这样,您就不需要向处理程序发出请求,也不需要母版页中的任何标记。

You could do an HttpModule that writes the javascript directly to the response output. This way you don't have a request to the handler or any markup in the master page.

花想c 2024-11-24 11:33:02

您可以使用一段 JavaScript 代码将这些变量存储在隐藏字段 market runat=server 中。然后,您可以在回发时在服务器端获取它们。

You can have a block of javascript code that stores these variables in hidden fields market runat=server. You can then pick them up server side on a postback.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文