2010-03-01 122 views
2

隨着jQuery的自動完成我有一個隱藏的輸入字段來存儲ID,因爲名稱被輸入到選擇自動填充字段。ASP.NET MVC隱藏字段不POSTING

像這樣:

 $("#Clients").result(function (event, data, formatted) { 
      if (data) { 
       $("#ClientID").val(data["client_ClientNumber"]); 
       if (data["ClientName"] && data["client_address1"] && data["client_postcode"] && data["client_postname"]) { 
        $("#ClientDetails").html(
        "<li class=\"clientNumber\">Client ID: " + data["client_ClientNumber"] + "</li>" + 
        "<li>" + data["ClientName"] + "</li>" + 
        "<li>" + data["client_address1"] + "</li>" + 
        "<li>" + data["client_postcode"] + data["client_postname"] + "</li>" 
        ); 
       } 
} 

這是我的HTML:

<div id="ClientSelectionPlaceholder"> 
     <h3>Client</h3> 
     <%=Html.TextBox("Clients", null, new { @class = "clientsDropDown" })%> 
     <%=Html.Hidden("ClientID", null, new { disabled = true}) %> 
    </div> 

的問題是,這個隱藏的客戶端ID字段不回發也不確實與jquery.serialize序列化()。它總是缺失。但據我可以告訴我的代碼看起來很好。

回答

6

爲什麼你禁用隱藏字段?別。

3

這是因爲該字段被禁用。

...new { disabled = true}... 
2

當您設置禁用屬性的輸入元素,它的價值是發佈:

<%=Html.Hidden("ClientID", null, new { disabled = true}) %> 
+0

其實我已經將其設置爲禁用,因爲我也有被禁用的一些輸入文本字段他們的價值觀得到了發佈。所以我遵循了同樣的原則。 – mare 2010-03-01 12:47:51