2017-11-14 16 views
0

私はIndexビューれるrenderPartialポップアップモーダルMVCのC#

@foreach (var item in Model){ 
<tr><td>......</td> 
    <td><button class="success" data-toggle="modal" data-target="#detailsModal" >details</button> 
     <div class="modal fade" id="detailsModal" tabindex="-1" role="dialog" aria-labelledby="detailsModalLabel" aria-hidden="true"> 
      @{Html.RenderPartial("_Details", item);} 
     </div></td></tr>} 

しかし、異なる行上のデータベースのポップアップ・ショーは常に最初の項目を私のボタンをクリックした後にいくつかのコードを持っています。どうすれば変更できますか?

コントローラ

 public ActionResult Details(int? id) 
    { 
     DBase dbase = new DBase(); 
     dbase = db.DBase.Find(id); 
     return PartialView("_Details", dbase); 
    } 

答えて

0

あなたは同じIDを使用してHTML内で宣言multipleモーダルを持っているため、あなたのforeachループへ。

したがって、見つかった最初のモーダル要素のみを使用します。これを修正するには、各モーダルに一意のIDを付けます。

それはid="detailsModal-1"など

ようになるので、それで、あなたがそれにインデックスを追加することにより、 data-target="#detailsModal"id="detailsModal"を変更します
関連する問題