2014-02-26 55 views
0

我使用數據表插件,事實是我有一千行,所以我實現了服務器處理方法。事情是,其中一列有一個文本框,但鑑於我在控制器中生成的信息,我在那裏創建該字段。輸入文本沒有價值ASP .NET MVC 4

這是我在控制器定義元素:

<input class='form-control' data-val='true' data-val-number='El campo Número de Protocolo debe ser un número.' data-val-range='El campo Número de Protocolo debe ser un número entero.' data-val-range-max='2147483647' data-val-range-min='1' id='donaciones_" + i +"__numeroProtocolo' name='donaciones[" + i + "].numeroProtocolo' type='text' /> 

在我的視圖模型中的一個字段是一個名爲List<Donacion> donaciones和Donacion對象的屬性之一是「numeroProtocolo」。該文本框似乎呈現良好,但是當我鍵入它時,「值」屬性不會改變。無論我寫什麼,價值財產都不會改變。

這就是它看起來像在視圖渲染時:

<input id="donaciones_0__numeroProtocolo" class="form-control" type="text" name="donaciones[0].numeroProtocolo" data-val-range-min="1" data-val-range-max="2147483647" data-val-range="El campo Número de Protocolo debe ser un número entero." data-val-number="El campo Número de Protocolo debe ser un número." data-val="true"></input> 

任何想法,爲什麼它可以是這樣嗎?

在此先感謝!

回答

0

我意識到什麼是錯的。我在這裏接受答案供將來參考。我爲每個文本輸入生成不同的名稱,具體取決於頁面。例如,如果我顯示10行,頁面1的名稱將爲donations[0],donations[1],...,donations[9],頁面2 將爲donations[10],donations[11],...,donations[19]。問題在於,在每個ajax調用表重繪之後,在服務器端處理後,您將丟失名稱爲0,1... to 9的以前的元素,因此現在只有現在使用10,11... to 19之後的元素,並且mvc無法返回包含以一個不同於0的指數。這就是爲什麼它不起作用。