2013-02-10 82 views
0
價值

但不文本我使用MVC劍道UI和我遇到奇怪的行爲具有ComboBox,當我做到以下幾點:劍道UI組合框保留在返回頁面

  1. 在組合框中選擇一個項目。
  2. 離開頁面。
  3. 使用瀏覽器的返回按鈕返回到頁面。

返回時,組合框爲空(或者如果我配置了佔位符,則出現佔位符)。但是,當我打開組合框時,我最初選擇的項目被突出顯示。因此,看起來價值是保留的,儘管案文不是。

通常情況下,數據輸入項保留了他們離開頁面時的值,因此這種行爲看起來並不標準。

有什麼方法可以確保ComboBox在返回頁面時保留其文本嗎?

感謝,

回答

0

看到一些您的代碼會幫助,但我會扔了這一點。這有點文檔沒有使用Kendo()。DropDownListFor但我覺得它是最好的。我還發現,最好繼續,將您的列表選項從您的數據看起來像轉換爲SelectListItem的IList,以後會節省很多悲傷。這是一個部分,被放在一堆視圖中。

@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "ChangeProject" })) 
{ 
    @(Html.Kendo().DropDownListFor(x => x.CurrentProjectId) 
     .HtmlAttributes(new { style = "width: 450px;" }) 
     .OptionLabel("Project...") 
     .BindTo(Model.ProjectSelectList) 
     .Events(events => events.Change("submitProjectForm")) 
    ) 
    <script type="text/javascript"> 
     function submitProjectForm() { 
      $('#ChangeProject').submit(); 
     } 
    </script> 
} 

模型應用到網頁...

public class ThisViewModel 
{ 
    public int CurrentProjectId { get; set; } 
    public IList<SelectListItem> ProjectSelectList { get; set; } 
    ... 
} 
0

可以SUMIT之前設置commboBox的控制等文字的值或者去新的一頁:

$("#controlid").val($("#controlid").data("kendoComboBox").text());