none
asp.net mvc de modal popup RRS feed

  • Soru

  • Merhaba;

    Hemen hızlıca giriş yapayım. Öncelikle veritabanımda firmalar adında bir tablom var bu tablomla ilişkili çalışmalar adında bir tablom daha var.

    Ben firmaları güzelce eklettirdim.Listelettirdim.Firmalarımı listelediğim yerin hemen yanında bir boostrap modal popup koyup ilgili firmaya ait çalışmaları eklettirmek istediğimde bir sıkıntı ile karşılaştım.

    Gönderdiğim modal-popup da ki kaydet butonu hep aynı Id gönderiyor 

    İşte Kodlarım;

    <table class="table table-hover">
        <thead>
            <tr>
                <th>
                    @Html.DisplayNameFor(model => model.FirmaAdi)
                </th>
                <th>
                    @Html.DisplayNameFor(model => model.IlgiliKisi)
                </th>
                <th>
                    @Html.DisplayNameFor(model => model.FirmaTelefon)
                </th>
                
                    @*<th>
                        @Html.DisplayNameFor(model => model.FirmaEmail)
                    </th>
                
                <th>
                    @Html.DisplayNameFor(model => model.Adres)
                </th>
                <th>
                    @Html.DisplayNameFor(model => model.Sehir.SehirAdi)
                </th>
                <th>
                    @Html.DisplayNameFor(model => model.Uye.KullaniciAdi)
                </th>*@
                <th></th>
            </tr>
        </thead>
    
                @foreach (var item in Model)
                {
                    <tbody>
                        <tr>
                            <td>
                                @Html.DisplayFor(modelItem => item.FirmaAdi)
                            </td>
                            <td>
                                @Html.DisplayFor(modelItem => item.IlgiliKisi)
                            </td>
                            <td>
                                @Html.DisplayFor(modelItem => item.FirmaTelefon)
                            </td>
                            @*<td>
                                @Html.DisplayFor(modelItem => item.FirmaEmail)
                            </td>
                            <td>
                                @Html.DisplayFor(modelItem => item.Adres)
                            </td>
                            <td>
                                @Html.DisplayFor(modelItem => item.Sehir.SehirAdi)
                            </td>
                            <td>
                                @Html.DisplayFor(modelItem => item.Uye.KullaniciAdi)
                            </td>*@
                            <td>
                                @Html.ActionLink("Düzenle", "Edit", new { id = item.Id }) |
    
                                @Html.ActionLink("Sil", "Delete", new { id = item.Id }) 
    
                                <button class="btn btn-primary" data-toggle="modal" data-target="#formModal">
                                    Launch Form Modal
                                </button>
    
                                <div class="modal fade" id="formModal" tabindex="-1" role="dialog" aria-labelledby="formModalLabel" aria-hidden="true">
                                    <div class="modal-dialog">
                                        <div class="modal-content">
                                            <div class="modal-header">
                                                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                                                <h4 class="modal-title" id="formModalLabel">Large Modal Title</h4>
                                            </div>
                                            <div class="modal-body">
                                                <form id="demo-form" class="form-horizontal mb-lg" novalidate>
                                                    <div class="form-group mt-lg">
                                                        <label class="col-sm-3 control-label">Name</label>
                                                        <div class="col-sm-9">
                                                            <input type="text" name="name" class="form-control" placeholder="Type your name..." required />
                                                        </div>
                                                    </div>
                                                    <div class="form-group">
                                                        <label class="col-sm-3 control-label">Email</label>
                                                        <div class="col-sm-9">
                                                            <input type="email" name="email" class="form-control" placeholder="Type your email..." required />
                                                        </div>
                                                    </div>
                                                    <div class="form-group">
                                                        <label class="col-sm-3 control-label">URL</label>
                                                        <div class="col-sm-9">
                                                            <input type="url" name="url" class="form-control" placeholder="Type an URL..." />
                                                        </div>
                                                    </div>
                                                    <div class="form-group">
                                                        <label class="col-sm-3 control-label">Comment</label>
                                                        <div class="col-sm-9">
                                                            <textarea rows="5" class="form-control" placeholder="Type your comment..." required></textarea>
                                                        </div>
                                                    </div>
                                                </form>
                                            </div>
                                            <div class="modal-footer">
                                                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                                                @Html.ActionLink("Kaydet", "CalismaEkle", new { id = item.Id })
                                                
                                                
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                
                            </td>
                        </tr>
    
    
                    </tbody>
                }
    
    </table>

    Sizce Sıkıntı nereden kaynaklanıyor atladığım yer neresi şimdiden teşekkürler.

    Çözümü bilmesenizde fikirlerinizi paylaşabilirisiniz.

    İyi Çalışmalar.

    1 Kasım 2016 Salı 16:53

Yanıtlar

  • çünkü hep 1. modal açılıyor.

    Hatanız şu, her kayıt için her satıra ayrı bir modal koymuşsunuz, bağlı olarak hepsinin id si aynı olmuş. 

    • Modalı döngü dışına , sayfa altına bir yere koyun. Sayfada bir tane modal olsun
    • Button a data- attributeler ile bilgileri koyun,
    • Butona tıklandığında modal içindeki inputların value larına data- attributelarındaki bilgileri script ile atayın.

    bunun dışında 1-2 hatanız daha var, döngüde tbody leri çoğaltıyorsunuz. bir table de bir tbody olmalıdır. Html helper kullanmamışsınız, modele bind etmek zor olur. WebGrid kullanın bu şekilde sayfalama ve sıralama için ayrıca kod yazmanız gerekecek.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com



    1 Kasım 2016 Salı 19:00
    Moderatör

Tüm Yanıtlar

  • çünkü hep 1. modal açılıyor.

    Hatanız şu, her kayıt için her satıra ayrı bir modal koymuşsunuz, bağlı olarak hepsinin id si aynı olmuş. 

    • Modalı döngü dışına , sayfa altına bir yere koyun. Sayfada bir tane modal olsun
    • Button a data- attributeler ile bilgileri koyun,
    • Butona tıklandığında modal içindeki inputların value larına data- attributelarındaki bilgileri script ile atayın.

    bunun dışında 1-2 hatanız daha var, döngüde tbody leri çoğaltıyorsunuz. bir table de bir tbody olmalıdır. Html helper kullanmamışsınız, modele bind etmek zor olur. WebGrid kullanın bu şekilde sayfalama ve sıralama için ayrıca kod yazmanız gerekecek.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com



    1 Kasım 2016 Salı 19:00
    Moderatör
  •  Yardımlarınız ve tavsiyleriniz için çok teşekkür ederim.

    İyi Çalışmalar.

    1 Kasım 2016 Salı 19:40