2016-04-21 3 views
1

У меня есть вид бритвы, который отображает все файлы PDF, связанные с конкретным пользователем, использующим для каждого цикла. Для отображения pdf-файла я использовал <embed>.Foreach loop не работает в модальном

@foreach (FileInfo res in Model) 
{ 
    <embed src="~/PDF/@res.Name" width="850" height="850" type="application/pdf" /> 
} 

Используя приведенный выше код, он петли и отображает pdf правильно. Тем не менее, я хочу, чтобы pdf-файл отображался в модальном окне. Таким образом, у меня есть этот код ниже, он петляет и отображает все разные имена файлов, но когда я просматриваю их, все файлы отображают содержимое первого файла в модальном окне.

@foreach (FileInfo res in Model) 
{ 
    <div class="modal fade" id="resultmodal" role="dialog" tabindex="-1"> 
    <div class="modal-dialog modal-lg"> 
     <div class="modal-body"> 
     <embed src="~/PDF/@res.Name" width="850" height="850" type="application/pdf" /> 
     </div> 
    </div> 
    </div> 

    <div> 
    <a href="#resultmodal" data-toggle="modal">View Result</a> 
    </div> 
} 

Любые идеи?

+0

Не следует ли изменить источник вставки тегов, используя переменную res внутри цикла? – ggderas

+0

При отладке в инструментах разработчика браузеров задается ли каждый встроенный src с различными именами файлов? –

+0

@ggderas - это идея, что она должна измениться, потому что она петли – Qwerty

ответ

1

Что делать, если вы однозначно обрабатывать событие на каждой основе путем изменения #resultmodal" к "#[email protected]" в обоих A HREF результате просмотра и id="[email protected]" для модального DIV?

@foreach (FileInfo res in Model) 
{ 
    <div class="modal fade" id="[email protected]" role="dialog" tabindex="-1"> 
     <div class="modal-dialog modal-lg"> 
      <div class="modal-body"> 
       <embed src="~/PDF/@res.Name" width="850" height="850" type="application/pdf" /> 
      </div> 
     </div> 
    </div> 
    <div> 
     <a href="#[email protected]" data-toggle="modal">View Result</a> 
    </div> 
} 

Таким образом, каждая ссылка на результат просмотра обрабатывает отдельный div.

1

Первый файл отображается, потому что каждый ваш div имеет идентификатор resultmodal, и вы ориентируетесь на resultmodal с каждого a href. Таким образом, он показывает первый div, найденный на странице. Вы должны дать каждому div уникальный идентификатор, а также таргетить его на div из соответствующего a href '.

<div class="modal fade" [email protected]("#resultmodal" +res.Name) role="dialog" tabindex="-1"> 
    <div class="modal-dialog modal-lg"> 
    <div class="modal-body"> 
     <embed src="~/PDF/@res.Name" width="850" height="850" type="application/pdf" /> 
    </div> 
    </div> 
</div> 

<div> 
    <a [email protected]("#resultmodal" +res.Name) data-toggle="modal">View Result</a> 
</div> 
+0

Привет, попробовал это, но даже не показывает модальное окно. – Qwerty

+0

Можете ли вы проверить, генерирует ли он правильный идентификатор. – Mairaj

+0

Под идентификатором вы имеете в виду? – Qwerty

Смежные вопросы