开发不依赖于JavaScript的ASP.NET应用程序的提示

时间:2009-05-16 03:54:14

标签: asp.net javascript

不确定这是否属于社区维基...

有人可以提供一些关于如何成功构建不依赖于JavaScript的ASP.NET站点的一般指导原则吗?我的理解是,我应该在没有JavaScript的情况下构建一个功能性站点,并使用它来增强用户体验。说起来容易做起来难......我怎样才能确保我的网站在没有JavaScript的情况下无法启用JavaScript并尝试它?或者这是经验带来的东西吗?

8 个答案:

答案 0 :(得分:2)

尝试ASP.NET MVC!确保大多数示例都使用JavaScript来实现AJAX功能,但是很容易构建一个不使用JavaScript的功能完备的站点。

由于ASP.NET MVC不使用服务器控件及其所有嵌入式JavaScript,因此使用非常小且轻量级的HTML构建网站是一种很好的方式,同时仍然使用C#,VB.NET编写数据访问和业务逻辑或任何其他.NET语言。

答案 1 :(得分:1)

如果要使用许多ASP.NET控件(即DataGridView),则会生成包含大量JavaScript的ASP.NET页面,以便处理控件上的事件(即在DataGridView中选择一行)。我认为你将失去这么多ASP.NET,试图让ASP.NET工作而不启用JavaScript是不切实际的。

答案 2 :(得分:1)

禁用Javascript是测试网站如何执行的最佳方式。好消息,IE8的开发人员工具提供了一种快速简便的方法。现在,说了这么多,你经常做的唯一事情就是用一个带有noscript标签的消息来表示你的网站需要javascript以获得最佳功能。

答案 3 :(得分:1)

许多ASP.NET功能&禁用JavaScript时,控件将不起作用。想想LinkBut​​ton的onclick事件,它包含对JavaScript函数的调用。

LinkBut​​ton只是一个例子。但是还有很多其他的事情。

答案 4 :(得分:1)

我已经构建了很少或没有JavaScript的ASP.Net网站,所以它绝对可能(只是一个皇家的痛苦。)这个诀窍,这听起来很愚蠢,就是使用尽可能少的<ASP:>类型标签。可能。这些都产生了各种级别的JavaScript。普通的老式HTML元素可以很好地工作,没有脚本。

因此,在极端情况下,您使用所有普通的HTML元素编写表单,然后在另一个接受表单提交的页面上提交该表单提交点并将其交给服务器端脚本。

换句话说,假装你使用ASP.NET获得的是一种时髦的服务器端编程语言,并且你在1998年编写HTML。

现在,完成此操作后,我可以告诉您,最终结果是具有更清晰编程语法的经典ASP网页。 ;)使ASP.NET比传统ASP“更好”的大部分功能都依赖于JavaScript,因此编写一个无JavaScript的ASP.NET系统是一种反复射击自己的练习。

但是,您应该做的一件事是确保第一页或第二页在没有JavaScript的情况下工作。与10年前不同的是,你可以放心地认为任何浏览你页面的浏览器都有JavaScript,而且大约8年前,你的访问者可能因为速度原因没有关闭JavaScript,他们很可能有一些类似于Firefox的NoScript插件一直拨打到11个。所以,你的前几页需要运行得足够好a)告诉新访问者他们需要JavaScript,并且b)仍然看起来和工作足够好看起来将您的网站添加到白名单是值得的。 (根据我的经验,大多数人都完成了第一个,但是在第二个方面完全放弃了球。换句话说 - 如果你的超级花哨的web 2.0大型网站开始看起来像craigslist,如果noScript被解雇我可能不会打扰让你在我的机器上运行脚本。)

答案 5 :(得分:0)

如果您担心在用户的浏览器中禁用了JavaScript,那么您可以检查并相应地处理您的网站。

如果您决定在没有JavaScript的情况下构建网站,那么您最终将建立一个有点静态的网站。如果您只需要构建一个静态网站,那么您可以继续使用这种方法。

答案 6 :(得分:0)

使用基本的html表单和css编写所有内容,然后您将知道它在没有javascript的情况下工作。

一旦你对它感到满意,那么看看不引人注目的javascript,这样你就可以在启用javascript时修改应用程序的工作方式。

答案 7 :(得分:0)

上次我查看了一些关于此问题的统计数据,大约1%禁用了JavaScript,所以为什么要花费数小时的时间来做你应该做的就是显示一条消息告诉用户你的网站需要javascript。

利用你的时间来提高工作效率,而不是试图围绕感知的限制。