2011-11-21 77 views
0

我想創建一個表單,用戶創建一個列表然後保存它。該列表可以有任意數量的行。用戶無法保存列表,直到完成(添加了所有行/項目),並且我無法在發佈前使用JavaScript在客戶端上完成所有操作。在asp.net mvc中創建一個不包含javascript的列表

該表單將創建一個聯繫人,就像在通訊錄或其他東西中一樣。實體看起來是這樣的:

public class Contact 
{ 
    public string Name { get; set; } 
    public string Company { get; set; } 
    public List<ContactRow> ContactRows { get; set; } 
} 

的ContactRow看起來是這樣的:

public class ContactRow 
{ 
    public string Type { get; set; } 
    public string Value { get; set; } 
} 

所以,基本上它的名稱和公司接觸。該聯繫人具有聯繫人行列表,其中每行都有一個類型(電話,電子郵件等)和值(555-12334,[email protected]等)。

我的表格將分別包含名稱OCH公司兩個普通文本框。但我不知道如何處理聯繫人列表的列表。我希望用戶能夠做的是添加新行,編輯行和刪除行。所有這些都必須在我單擊保存按鈕之前完成,即保存時必須全部完成列表。

這是不是很難使用JavaScript和我已經做到了。但是現在我想在沒有javascript的情況下實現這個功能。在建立列表時發佈到服務器是可以的,但是列表在完成之前不能保存。

想法?

+0

如果沒有JavaScript,您將很難實現此功能。並不是說這是不可能的,但是,這將是相當多的工作。 –

+0

同意,但從可訪問性的角度來看,這是好得多。 –

回答

0

如果你不想使用JavaScript回傳而建立的名單是你能做的一切。

這個用戶體驗往往被視爲窮人的工作正在進行中,但最好的起點使用progressive-enhancement時,讓你的應用更加人性化。

0

OP聲明JavaScript不是一個選項。由於我們的應用程序中有一個類似的需求,我感到你的痛苦。我們有一個名爲的構造,其可更新列表具有與您概述的功能相同的功能。

我們在服務器上執行數據處理。每個列表都顯示在一個表格中。每行包含項目數據並具有與其關聯的操作圖標。默認設置是顯示,我們支持新的,更新和刪除的操作。

用戶後他們按一個按鈕來添加或從列表中刪除的項目的項目輸入數據。選擇現有項目允許更新操作。列表和狀態在服務器上確定,客戶端不運行Javascript。

正如@ rich.kelly指出的,你需要去服務器爲每個操作。做任何事都需要更長的時間,而你的會話得到鍛鍊,但它符合客戶的要求。

相關問題