2012-01-31 19 views
0

對於我的問題沒有編碼術語,我非常抱歉。你們中許多人可能已經看到或使用谷歌日曆。我試圖設計一個類似的網絡應用程序(不是日曆,但共享2維網格的相同概念,並且點擊任何網格應該導致彈出窗口,我填充數據進入該特定網格而無需刷新頁面)。編輯網格數據或刪除它們的選項也應該在那裏。設計一個網格來動態更新數據

我不知道設計此類網頁所需的必備條件。用什麼語言(或庫)來設計這樣的應用程序?我從哪說起呢?有關學習什麼或如何接近它的詳細答案將會有所幫助。我認爲我很熟悉django的基礎知識。我打算在一個基於django的網站上使用這個應用程序。那可能嗎 ?

我試圖搜索類似的問題,但他們使用相當先進的術語,我不能做任何事情。

+0

Chris的回答非常好,並解釋了您需要的工具。既然你熟悉django,我會建議你嘗試一下沒有AJAX的概念證明。試試你的手在jQuery/JavaScript彈出窗口,但使用常規形式提交編輯/刪除。當你對此感到滿意時,建立ajax功能(django視圖實際上應該不會改變),它將根據服務器響應異步發佈數據和更新/刪除HTML元素。 – 2012-01-31 19:52:33

+0

感謝您的回覆。我一直在學習JavaScript和CSS。我正在嘗試一些像藍圖和978.gs這樣的CSS框架。有趣的是,發現網格系統實際上是用來給網頁格式的,而不僅僅是用於製作表格,正如我在問題中提出的那樣。 @chris – 2012-02-02 12:39:19

回答

1

設置「網格」不過是使用CSS浮動元素。有1001個關於如何在網上進行的教程,可以通過您的可信賴的朋友Google輕鬆找到。

「click and it pop up with additional info」stuff是JavaScript,尤其是「無刷新」的提取是AJAX(異步JavaScript和XML)。網上還有大量有關該主題的信息。

如果這對你來說都是希臘語,我建議你詳細瞭解我所提到的所有主題。您可以從維基百科等某個地方開始進行概述,然後查找您在Google中遇到的陌生概念,或在亞馬遜或您當地的書店上花些時間並查找有關這些主題的書籍。

一旦你對所有這些有點熟悉,你幾乎肯定不會從頭開始。有大量的跨瀏覽器問題和樣板代碼,這些只是簡單地引入錯誤的地方。你會想選擇一個JavaScript框架來處理所有的問題,而jQuery將是一個很好的選擇。它非常易於使用,並且幾乎是最流行的JS框架,所以您在教程中不會遇到任何短缺,或者在您需要時提供幫助。

如果遇到特定問題,您可以回到這裏來提出具體問題,但大部分情況下,您需要從互聯網和/或書籍這樣龐大的資源中搜集您所能獲得的信息玩。嘗試一下,從錯誤中學習。這是學習的最佳方式。

0

您是否搜索過現有的jQuery或Sencha插件來提供您想要的功能?

如果您因爲某些原因需要設計自己的設計,那麼您需要以下技術的組合:HTML,JavaScript,某些JavaScript庫會有所幫助(例如jQuery)。

要繪製類似小部件的日曆,您可以使用HTML表格。小心並注意表格的填充,邊距,邊界等,因爲這可能會令人頭疼。對於彈出窗口,您可以使用jQuery impromptu或SimpleModal之類的東西。

+0

OP只是以日曆爲例。他不是在製作日曆。 – 2012-01-31 19:26:28

+0

編輯答案反映相同。感謝您的注意。 – Sid 2012-01-31 19:29:40

0

我實現了Django可插入式應用程序,它允許使用網格行執行標準的CRUD操作。此外,它可以定義在客戶端和服務器端的自定義操作都: https://github.com/Dmitri-Sintsov/django-jinja-knockout

有與被顯示爲網格一些模型示例項目,都非AJAX數據表和AJAX數據表: https://github.com/Dmitri-Sintsov/djk-sample

它在客戶端使用jQuery/underscore.js/knockout.js - 即使在速度較慢的連接中也能快速加載的小型庫。