2009-05-16 52 views
5
ASP.NET應用程序

不知道這屬於社區維基...提示開發不依賴於JavaScript

有人能給如何成功構建ASP.NET網站的一般準則,不依賴於JavaScript?我的理解是,我最初應該在沒有JavaScript的情況下構建一個功能性網站,並使用它來增強用戶體驗。這說起來容易做起來難......我如何確保我的網站在沒有JavaScript的情況下無法使用JavaScript並試用它?或者這是有經驗的東西嗎?

回答

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,他們很可能有類似NoScript Firefox的插件一直打到11.所以,你的第一個幾頁需要足夠好的工作,以a)告訴新訪問者他們需要JavaScript,並且b)仍然看起來和工作足夠好,使它看起來像添加你的網站到白名單是值得的。 (根據我的經驗,大多數人會完成第一個完成,但完全放棄第二個球。換句話說 - 如果你的超級花式web 2.0巨型站點開始看起來像craigslist,如果noScript被解僱我可能不打算讓你在我的機器上運行腳本。)

1

如果要使用許多ASP.NET控件(即DataGridView),ASP.NET頁面會生成大量JavaScript以處理控件上的事件(即,在DataGridView中選擇一行) 。我想你會失去很多ASP.NET,試圖讓ASP.NET在沒有啓用JavaScript的情況下工作是不切實際的。

+0

這很有趣。那麼我應該在需要JavaScript的頁面上進行檢查嗎?我是通過這麼做來限制自己的,還是我非常需要用ASP.NET來做到這一點? – 2009-05-16 04:10:31

1

禁用Javascript是測試網站如何執行的最好方法。好消息是,IE8的開發者工具提供了一個快速而簡單的方法來做到這一點。現在,話雖如此,通常你唯一能做的就是發出一個帶有noscript標籤的消息,以表明你的站點需要javascript來獲得最佳功能。

+0

嘗試在ASP.NET中創建不需要JavaScript的網站更實用嗎? – 2009-05-16 04:11:34

+0

@Mike:這取決於你網站的內容。豐富的交互式Web 2.0站點不能沒有客戶端腳本。然而,純文本信息網站可能會做。 – Cerebrus 2009-05-16 06:10:17

0

如果您擔心在用戶的瀏覽器中禁用了JavaScript,那麼您可以檢查並相應地處理您的網站。

如果你確實決定建立沒有JavaScript的網站,那麼你最終會建立一個有點靜態的網站。如果你的需要只是建立一個靜態網站,那麼你可以繼續這種方法。

+0

我想對我來說,這一切都歸結爲嘗試在ASP.NET中構建一個不需要JavaScript來充分發揮作用的站點是可能的還是實際的。 – 2009-05-16 04:17:53

0

用基本的html表單和css寫一切,然後你就會知道它在沒有javascript的情況下工作。

一旦你對它感到滿意,那麼看看不引人注意的JavaScript,這樣你就可以在啓用javascript的時候修改應用程序的工作方式。

1

許多ASP.NET功能&控件在禁用JavaScript時不起作用。想想LinkBut​​ton的onclick事件,它包含對JavaScript函數的調用。

LinkBut​​ton就是一個例子。但還有很多其他的東西。

2

試用ASP.NET MVC!確保大部分示例都使用JavaScript來實現AJAX功能,但是構建不使用JavaScript的功能齊全的網站很容易。

由於ASP.NET MVC並未在所有嵌入式JavaScript中使用服務器控件,因此這是一種使用C#,VB編寫您的數據訪問和業務邏輯的極好輕量級HTML構建站點的好方法。 NET或任何其他.NET語言。

+0

我現在開始學習MVC。 – 2009-05-16 14:12:44

+0

此外,您如何管理您的AJAX功能,以便與不使用JavaScript的人員兼容?這可能或實際可行嗎? – 2009-05-17 03:13:19

+0

這將是一個很好的新問題,或值得一搜。我嘗試使一個Web應用程序無AJAX地工作,然後添加該功能。對於桌面瀏覽器,我認爲JavaScript是一種給定的方式,不必擔心沒有它的人,但移動瀏覽器可能是一個不同的故事。我仍然在研究如何在現在正在構建的應用程序上處理這些問題。 – CoderDennis 2009-05-17 15:34:40

0

上次我查看了一些有關這方面的數據約1%禁用了JavaScript,所以爲什麼要花費幾個小時來處理這個問題做是顯示一條消息告訴用戶您的網站需要JavaScript。

利用你的時間來提高生產力,而不是試圖圍繞感知的限制寫作。