2016-08-16 40 views
-1

我甚至不知道這是如何可能的,但是我的隱藏輸入值並不是模型中的實際值。模型變量在傳遞到視圖時不一致

這是一個局部視圖,它包含一個被添加到dom的表單。沒有其他形式或投入存在於dom中。

下面顯示2個不同的guid。添加到查看調試器外部的值。在返回部分之前,我還會看到2個不同的值調試,因爲它應該。

@Html.DisplayFor(m => m.ID) 
@Html.DisplayFor(m => m.StaffID) 

現在我也有

@Html.HiddenFor(m => m.StaffID) 
@Html.HiddenFor(m => m.ID) 

當我檢查DOM,既ID STAFFID和包含但STAFFID呈現給視圖的模型具有2點不同的GUID。

這裏是jQuery的加載視圖

$(document).on('click', 'span[data-target="#modal-facility-staff-schedule-edit"]', function (e) { 
    e.preventDefault(); 
    WebUI.showPleaseWait(); 
    var id = $(this).closest('tr').attr('id'); 
    $.ajax({ 
     type: "GET", 
     url: "../Management/FacilityStaffScheduleEdit", 
     data: { id: id }, 
     success: function (data) { 
      $('body').append(data); 
      $('#modal-facility-staff-schedule-edit').modal('toggle'); 
      WebUI.reloadMasking(); 
     }, 
     error: function (XMLHttpRequest, textStatus, errorThrown) { 
      WebUI.handleError(XMLHttpRequest, textStatus, errorThrown); 
     }, 
     complete: function() { 
      WebUI.hidePleaseWait(); 
     } 
    }); 
}); 

新增

我已經添加了以下查看

@Html.HiddenFor(m => m.ID) 
@Html.HiddenFor(m => m.StaffID) 
<input id="ID" name="ID" type="hidden" value="@Model.ID"> 
<input id="StaffID" name="StaffID" type="hidden" value="@Model.StaffID"> 

DOM結果(如何?!?!? !?)

<input id="ID" name="ID" type="hidden" value="535e8d84-e770-48ee-8e82-56daa63fd603"> 
<input id="StaffID" name="StaffID" type="hidden" value="535e8d84-e770-48ee-8e82-56daa63fd603"> 
<input id="ID" name="ID" type="hidden" value="da6d7e8b-3b90-41dc-88d8-98748154cba1"> 
<input id="StaffID" name="StaffID" type="hidden" value="535e8d84-e770-48ee-8e82-56daa63fd603"> 

回答