2016-09-15 4 views
0

Я хочу иметь один модальный, только с изменением содержимого. В модальном im, показывающем статьи через iframe. Проблема в том, что мое решение немного отсталое, и вы можете увидеть предыдущую статью перед изменением. Им с помощью JS:Как создать динамический Uikit modal [Joomla]

function switchTitleMod1(title,id) { 
    document.getElementById("titleMod1").innerHTML = title; 
    document.getElementById("iframe").src = "index.php?option=com_content&view=article&id="+id+"&tmpl=component"; 
    } 

Модальное код:

<div id="informacje" class="uk-modal"> 
    <div class="uk-modal-dialog" > 
    <a onclick="resetTitleMod1();" class="uk-modal-close uk-close"></a> 
    <div id="titleMod1" class="uk-modal-header uk-text-bold uk-text-large uk-text-center"><h2>Zapisz si? na kurs</h2></div> 
    <iframe id="iframe"style="width: 100%;height:650px" scrolling="auto" frameborder="0" src="index.php?option=com_content&view=article&id="34"&tmpl=component" hspace="0"> 
    </iframe> 
    <div class="uk-modal-caption">Copyright by MRP-KODER</div> 

Это, как я называю модальность:

<a onclick="switchTitleMod1('Szkolenia HACCP','42');" href="#informacje" data-uk-modal="{target:'#informacje',bgclose:false,center:true}" class="uk-button uk-button-medium uk-button-primary">     <i class="uk-icon-info uk-icon-justify"></i>Informacje</a> 

Мой вопрос: Как создать модальное с помощью Jquery и только добавив удаление DOM. Ссылка на страницу: link Через щелчок «Informacje» Вы увидите, в чем проблема.

ответ

0

Я нашел решение самостоятельно :) Я использовал модель DOM, но он отлично работает, для использования разных модалов только путем изменения идентификатора кнопки.

var $jq = jQuery.noConflict(); 
     $jq(document).on('click', '#info', open_info_modal).on('click', '#zapytaj', open_ask_modal); 
     function open_info_modal(e) 
     { 
      var articleId = $jq(e.target).data('id'); 
      var articleTitle = $jq(e.target).data('title'); 
      $jq('#modal').on({ 
       'uk.modal.show':function(){ 
         $jq('#title', $jq(this)).html('<h2>'+articleTitle+'</h2>'); 
        $jq('span', $jq(this)).html('<iframe id="iframe"style="width: 100%;height:650px" scrolling="auto" frameborder="0" src="index.php?option=com_content&view=article&id='+articleId+'&tmpl=component" hspace="0">'); 
       }, 
       'uk.modal.hide':function(){ 

       } 
      }).trigger('uk.modal.show'); 
     } 
     function open_ask_modal(e) 
     { 
      var articleTitle = $jq(e.target).data('title'); 
      $jq('#modal').on({ 
       'uk.modal.show':function(){ 
         $jq('#title', $jq(this)).html('<h2>'+articleTitle+'</h2>'); 
        $jq('span', $jq(this)).html('<iframe id="iframe2"style="width: 100%;height:600px" scrolling="auto" frameborder="0" src="index.php?option=com_chronoforms5&chronoform=zapytaj-szkolenie&tmpl=component&name1='+articleTitle+'" hspace="0">'); 
       }, 
       enter code here'uk.modal.hide':function(){ 

       } 
      }).trigger('uk.modal.show'); 
     }