2017-07-06 63 views
0

我已在淘汰賽結合淘汰賽綁定到一個MVC剃刀模型

 <select multiple="multiple" height="5" data-bind="options:allItems, 
selectedOptions:selectedItems"> </select> 

上述隨後產生的「observableArray」在淘汰賽腳本的所有項目的列表。

我需要以某種方式綁定這個,就好像它是剃刀中的@ html.etc元素一樣。

例如,我有以下

 @using (Html.BeginForm("SubmitFull", "ENCOUNTER", null)) 

     { 

     @Html.HiddenFor(model => model.Name) 
     @Html.ValidationSummary(true) 
     <fieldset> 
     <legend>ENCOUNTER</legend> 
     <div class="editor-label"> 
      @Html.LabelFor(model => model.Date) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Date) 
      @Html.ValidationMessageFor(model => model.Date) 
     </div> 

所以,當我按一下按鈕,在我的頁面的底部,我在視圖上定義的模型

 @model MVC_MONGODB.Models.PATIENT.Patient 

會現在加載一個「Date」屬性和一個「Name」屬性。

我還需要使用來自knockout observableArray的值加載模型。我從來沒有做過這件事,我不知道最好的辦法是什麼,或者甚至可能的方式,我甚至不能100%確定這是可能的。

http://knockoutmvc.com/似乎是一個有前途的參考。

使用「ValueUpdate」似乎是一個可能性,或者一個(INPUT TYPE =「隱藏」)元素的地方..

我想主要有從我在這個問題上面提到的淘汰賽代碼的文本框,表現得好像它實際上裏面

@Html.TextAreaFor(model => model.ChiefComplaintsStr, 5, 100, new { 
    HtmlAttributes = new { } }) 

回答

1

可以設置淘汰賽使用像控件的HtmlAttributes相關屬性...

@Html.HiddenFor(model => model.ChiefComplaintsStr, htmlAttributes: new { @data_bind = "put knockout binding here"}) 
+0

而且是有如何使TextAreaFor隱藏? –

+0

我不明白你的意思?請澄清 – Nkosi

+0

您上面提到的代碼應該會生成一個加載了敲除綁定值的文本框,對不對?如果是這樣,我實際上需要隱藏用戶的框,因爲用戶已經可以看到從淘汰賽生成的框中的淘汰賽裝訂項目 –