0

我有一個視圖用作EditorTemplate。我想限制用戶可以編輯的內容與可以插入的內容。我的EditorTemplate View類型爲SomeModel,我知道如果SomeModel.Id不是0,那意味着我們正在做一個編輯,否則我們正在做一個插入。我想我可以做這樣的事情:檢測您是否在Editor中添加或更新模板視圖

@if (Model.Id == 0) 
{ 
    //show "insert-specific" UI 
} 

但出於某種原因,我總是得到0的,空值,默認情況下,等等。當我通過Model.而HTML輔助方法檢查回暖的真正價值得很好,如:

@Html.TextBoxFor(model => model.Id) 

再次,Model.Id的值始終爲0,即使當@Html.TextBoxFor(model => model.Id)示出了另一個值。

有沒有更好的方法來實現我想要做的?

注意:不確定它很重要,但我正在使用Telerik MVC Grid控件。它似乎不允許插入與編輯不同的視圖。

回答

1

呦,

如果您在使用Ajax結合則EditorTemplate序列化和發送到客戶端在那裏每次編輯記錄或添加新的記錄時間重新填入不同的值。 如果您正在使用AJAX的結合,那麼你可以使用OnEdit客戶端事件,並檢查e.mode是否是編輯插入。然後您可以使用JavaScript來操作該編輯器。

+0

您可否詳細說明一下,因爲這可能是我的問題的解決方案。 OnEdit事件會是什麼樣子?你能夠指定一個新的視圖(按名稱)? –

+0

不,在使用ajax綁定時沒有View這樣的東西 - 一切都是JavaScript - 這裏是鏈接到文檔 http://www.telerik.com/help/aspnet-mvc/telerik-ui-components-網客戶端API-和events.html#OnEdit –

相關問題