2013-04-17 148 views

回答

2

使用純HTML的原因是多方面的更好:

  • 如果用戶不支持JavaScript,或者您havea的JavaScript錯誤在你的代碼,你的形式仍然有效。
  • 純HTML格式編寫起來更簡單,而且難以搞砸
  • 實際按鈕在語義上比爲您提交表單的魔術鏈接或div更好。這有助於選項卡順序,操作系統集成,屏幕閱讀器等功能,並且對於在您之後處理代碼的程序員更加清楚。
  • 瀏覽器已經有測試過的代碼提交表單。爲什麼你會重寫那些沒有意義的代碼?它增加了風險,複雜性和時間。
  • 不寫JavaScript代碼意味着你有更多時間用於其他事情,比如不再處理代碼。

如果某件事已經存在並且適用於您的用例,請勿重新發明輪子!

+0

好的答案,除了禁用JavaScript的瀏覽器的注意事項外,真的嗎? –

+1

呃,這是要考慮的事情。我知道一些在所有網站上運行NoScript的人,只是將他們信任的網站列入白名單。其他時候,我一直呆在沒有X的終端中,唯一的瀏覽器是lynx--沒有JavaScript。考慮像Steam這樣的嵌入式瀏覽器,一些音樂播放器(顯示關於藝術家的last.fm/wikipedia頁面)以及其他類似的實體。爲了簡單起見,這些可能會禁用JavaScript - 甚至不實現它。當你可以合理而輕鬆地完成這項工作時,不依賴JavaScript是明智的。 –

+0

我明白了,謝謝你的洞察力。 –

0

唯一的缺點,我能想到的是,如果你需要重新加載頁面,因爲你正在與舊的網站,每次重新生成HTML ...但如果你正在建立一個新的系統,或者它已經這樣做,在我看來,它是更好的。節省帶寬,計算時間,重新渲染時間等。 如果您正在討論提交HTML表單,那麼它們確實沒有什麼區別。

0

不,確實沒有缺點。你可能有更多的代碼與你做這件事的方式相反,只是把所有東西都包裝在一個表單中,然後提交按鈕,但是你仍然可以利用https,當然還有網絡可能要提供的其他東西。

+0

謝謝。你能否澄清HTTPS的優勢?在提交按鈕或JavaScript中,這是優勢嗎? – santhosh

+0

有沒有需要澄清,你可以使用https你以任何一種方式去 –

0

最主要的缺點是無法爲禁用Javascript的訪問者提供功能。您可以通過提供不同的頁面來同時支持這兩個頁面,以便在禁用javascript時重定向到該頁面。

以下是用於檢測和反應中禁用了JavaScript的方法列表:

  1. <noscript>The HTML noscript tag.
  2. Using jQuery or Javascript to set a cookie
  3. 使用JavaScript來隱藏使用CSS的區域。
+0

我很驚訝地聽到提及支持JavaScript禁用瀏覽器。在2013年花費一點時間想想真的是浪費時間。 –

0

就個人而言,我不是HTML表單的粉絲。 HTML是一種佈局語言,而且是一種糟糕的語言。保持佈局和功能分離是面向對象編程的核心原則。無論你認爲HTML和JavaScript是否以這種方式表現這些功能,可能都是個人選擇。你可能會說CSS是佈局。

如果您正在編寫一個簡單的頁面,而且沒有其他工作,那麼使用HTML表單並不是一個壞主意。

如果您打算編寫一個尺寸適中的應用程序,並且有很多不錯的功能,那麼至少對我來說,在一個地方做到這一點是有道理的。

如果您開始引入JSON或任何類型的客戶端/服務器關係超越「這裏是我的文本或下拉選擇」,那麼採取程序員的方法而不是網頁設計師。 JavaScript爲您提供更多靈活性。您可以與服務器聊天,而不會在頁面上發生任何事情。

如果您使用像jQuery這樣的庫,編碼開銷非常小。