2012-11-27 31 views
0

我正在製作我的客戶端當前網站的jQuery移動應用程序版本。 他們有一個postgres數據庫,存儲用戶最喜歡的地址,他們希望用戶能夠刪除應用程序中保存的地址。Postgresql - 從jQuery Mobile中刪除行

我看了很多解決方案,但不確定什麼是最好的方法去,希望有人可以給我一些反饋。

我原本想以某種方式將保存的名稱從數據庫中拉出到下拉列表中,並將唯一標識放入列表中每個選項的標識中,並在下面有一個刪除按鈕。但我無法刷新頁面,因爲表單中的所有數據都將丟失。

我的下一個想法是嘗試設置一個CRUD表,只顯示保存的名稱列和它旁邊的刪除按鈕。但是他們都準備好使用MySQL,難道要讓它與Postgres數據庫鏈接嗎?

This幾乎正是我所需要的,但我所做的網站託管在Linux服務器上。

我基本上經過一些反饋和想法後,我應該看看這樣做,任何意見,非常感謝。

回答

1

首先,你需要在這裏考慮的幾個問題:

一,你將如何與您的網站進行溝通?

您可以使用ajax和JSON/JSONP與您的Web服務器進行通信。您需要在服務器端創建一個輕型Web服務(JSON,而不是SOAP協議)。考慮一下你的移動應用的功能,並考慮你需要傳輸/接收什麼樣的數據。

JSONP只適用於跨域通信。如果你要創建一個移動應用程序(android和iPhone),那麼你可以使用其他一些協議,但這需要一些本地編碼(如果你不喜歡/知道JAVA或Objective C跳過這一部分,JSON就足夠了) 。

二,現在客戶端的故事。您可以創建一個對象並將所有服務器端數據存儲到該對象中,或者可以使用CRUD表。 CRUD表是最快的選擇(如果你正確地做到這一點也是最快的選擇)。 jTable是一個優秀的CRUD框架。它不關心你的服務器端數據庫類型。服務器端將查詢所有需要的數據並以JSON格式發送。 當你在客戶端的所有數據加載到jTable框架,並用它做你想要的。完成客戶端編輯後,只發送增量數據(僅在數據修改前後發生差異)。這會降低您的數據大小。

三,如果您要同時刪除多個地址信息,那麼您對選擇框和刪除按鈕的想法非常好。沒有必要刷新頁面,因爲jQuery和jTable不會刷新。當您刪除/添加從選擇框元素只是這樣做:

$('#selectBox').create('refresh'); 

這將會讓你的選擇框,applay新的CSS格式化它。 如果你想刪除它,買一個最好使用一個listview,它會看起來好多了。四,參考文獻還有一件事,你需要考慮jQM列表和選擇框(下拉框)不是爲處理大量數據而構建的。可以容納很多,但在大型數據集上創建('刷新')會凍結你的應用程序。所以考慮分頁。