2016-10-14 4 views
0

私は剃刀ビューでDropDownListを持っています。これはデータベースからデータを取り込んだモデルから値を取得しています。私が達成したいのは、そのDropDownListからオプションを選択してボタンをクリックするとき、このオプションのリストを同じビューの下に選択して表示し、すべてのアイテムの隣に編集または削除のリンクを表示するときです。その後、別の画面で、この最終的な「リスト」を自分のデータベースに追加することができます。これは私のコードの一部です:DropDownListの選択項目を.NET MVCのリストに動的に追加します

モデル

public class SchedulerViewModel 
{   
     public string Frequency { get; set; }  
     public string SelectedReportValue { get; set; } 
     public IEnumerable<SelectListItem> ReportList 
     { 
      get 
      { 
       List<string> reportlist = DataAccess.retrieveReportList(); 
       return new SelectList(reportlist); 
      } 
     } 

     public string NewCronName { get; set; } 

     [Display(Name = "OrderDate")] 
     [DataType(DataType.Date)] 
     public System.DateTime OrderDate { get; set; } 

     public IEnumerable<SelectListItem> FrequencyList 
     { 
      get 
      { 
       List<string> frequencyList = DataAccess.retrieveFrequencyList(); 
       return new SelectList(frequencyList); 
      } 
     } 
} 

コントローラ

[HttpGet] 
public ActionResult AddCron() 
{     
    return View();    
} 

[HttpPost] 
public ActionResult AddCron(SchedulerViewModel model) 
{    
    return View(model); 
} 

ビュー

<script> 
    function myFunction() { 
     $("#div1").load('@Html.LabelFor(model => model.SelectedReportValue)'); 

    } 
</script> 
. 
. 
. 


<tr> 
    <td><h5>Frequency: </h5></td> 
    <td> @Html.DropDownListFor(model => model.Frequency, Model.FrequencyList)</td> 

    <td><h5>First Run Date: </h5></td>   
    <td> @Html.TextBoxFor(m => m.OrderDate, new { @class = "form-control datepicker", @id = "datepicker" })</td>   
</tr> 
<tr class="blank_row"> 
       &nbsp; 
</tr> 
<tr> 
    <td><p><b>Add Report</b></p></td> 
</tr> 
<tr> 
    <td><h5>Report :</h5></td> 
    <td>@Html.DropDownListFor(model => model.SelectedReportValue, Model.ReportList)</td> 
    <td><input type="submit" name="Add" value="Add" onclick="myFunction()" /></td> 
</tr> 

<div id="div1"></div> 

私は私のモデルに戻って選択された値を見ることができます[HttpPost]メソッドを呼び出すことはできますが、それでもビューでは機能しません。なにか提案を?の

<div id="div1"> 
    @Html.LabelFor(model => model.SelectedReportValue) 
</div> 

ベース:

enter image description here

、これは私が取得しようとしているものです...

enter image description here

+0

あなたはこれについて部分的な見解を考えましたか? – nocturns2

+0

@ nocturns2部分的な見方でそれを解決する方法についてはあまりよく知られていませんが、私はそれをよりよく理解できるように私に例を指摘できますか? –

+0

不要なコードを削除してください。彼らは本当に混乱しています。 – Win

答えて

0

試してみてくださいだけでカミソリを使用し、jqueryのを取り除きますあなたのコメントjqueryを使って変更イベントをトリガし、手動でリストに項目を追加することをお勧めします:

$("#filetype").change(function() { 
    //code handler to add to list 
}); 
+0

しかし、DropDownListから項目を選択してボタンをクリックするたびに新しい要素を追加する必要があるので、これはうまくいかないと思います –

関連する問題