为什么不建议在JSP中使用JavaScript?

时间:2008-11-29 07:55:51

标签: java javascript jsp

为什么不建议在JSP中使用JavaScript?我能想到的一个理由是关闭浏览器中的功能会阻止代码执行。这有什么其他原因吗?

5 个答案:

答案 0 :(得分:10)

Afaik,在jsp中使用javascript没有问题,很多网站都使用它。特别是如果您的网站是一个网络应用程序,您必须并排使用。他们是完全独立的。你只需要确保你所使用的是适当的。

关于在浏览器中关闭javascript以使网站无法使用的部分,无论是否使用jsp,无论是否使用jsp,都是如此。

答案 1 :(得分:1)

我知道这是一个非常古老的问题,但我认为无论如何我都会管道。我认为你应该在当前时间段使用javascript,因为它允许非常丰富的用户体验和js库,如jQuery(我个人最喜欢的),原型和mootools,很容易将javascript集成到你的应用程序中。

如果您正确设计应用程序,则可以添加javascript以丰富用户的体验(并且可以使他们更轻松地使用您的站点/应用程序),而无需额外的服务器开销和极少的工作量。

但是 - 您的网站不应该依赖于javascript的功能,因为用户的浏览器可能不支持它。

Javascript应该是不引人注目的,并为那些支持它的用户提供更丰富的体验。

这是一篇关于UI和优雅升级的好文章,而不是设计用户浏览器的失败。 http://realtech.burningbird.net/javascript/accessibility/gracefully-upgrading

答案 2 :(得分:1)

他的意思是“不要使用java scriptlets”,这是< %%>之间的东西。

最大的原因必须是可维护性和调试; scriptlets使一切都变得非常困难。

另一方面,如果你实现了taglibs,你可以将任何逻辑提取到真正的java类,这很容易调试,你仍然可以在visual xml / html编辑器中打开,因为taglib是一个有效的xml结构。

现在,在客户端(在javascript中)进行验证是个坏主意。用户可以禁用javascript,甚至可以直接访问网址以进行验证,从而为您提供漏洞利用。

答案 3 :(得分:0)

JSP是服务器端技术。即 - 服务器解析/编译所有信息,然后将其发送到客户端(即您的浏览器)。然后..

如果收到的数据包含任何javascript,那么浏览器会在自己的javascript VM中解释它,因为HTTP是无状态协议,所以很久就会忘记服务器。

考虑到“不在网上推荐JS”,我不打扰它。大多数网站都广泛使用JS,因此在客户端关闭它会使它们变得毫无用处。

答案 4 :(得分:0)

如果您有许多客户端,那么使用JavaScript将计算放在客户端上可能是个好主意。如果您在服务器上执行所有操作,那么您将浪费客户端浏览器提供的许多处理能力,如果太多客户端使服务器繁忙,Java的速度优势将无济于事。 (感谢 @Subtenante 在评论中指出这一点!)。

但另一方面,在服务器上运行的Java比客户端上的JavaScript更快,并且它不会受到客户端上的冗余代码的影响,以测试客户端运行的浏览器。

尽管如此,JavaScript仍有其用途。由于它在客户端上运行,因此可以在将表单字段发送到服务器之前验证表单字段。