2012-05-11 4 views
1

В настоящий момент следующий код будет загружен только тогда, когда пользователи нажимают на ссылку.Onload нажмите ссылку

Я хочу, чтобы при загрузке страницы это произошло без необходимости клика.

<script> 
$(document).ready(function() { 
    // Support for AJAX loaded modal window 
    $(document).on('click', '.btn-modal', function() { 
     $.get($(this).attr('data-target'), function(data) { 
      $('#modal').html(data); 
      $('#modal').modal('show'); 
     }, 'html'); 
    }); 
});​ 
</script> 

<!-- Modal window to load dynamic content --> 

<div class="modal hide fade customDialog" id="modal"></div> 
<a class="btn btn-modal" data-target="page.html" >Launch Modal</a> 
+0

возможно дубликат (http://stackoverflow.com/questions/6158532/jquery-how-to-trigger-click) –

ответ

4
$(document).ready(function() { 

     // Support for AJAX loaded modal window 
     $(document).on('click','.btn-modal',function() { 

      $.get($(this).attr('data-target'), function(data) { 
      $('#modal').html(data); 
      $('#modal').modal('show'); 
      }, 'html'); 
     }); 

     // here write 
     $('.btn-modal').click(); 
    // if you have multiple button then keep filter 
    // eg. 
    // $('.btn-modal:eq(0)').click(); // for first button 
    // $('.btn-modal:eq(1)').click(); // for second button and so more 
}); 
+1

Хотя обработчик события клика привязан к документу, он не будет инициироваться этим, поскольку это делегирование событий. –

+0

Это опасно, если есть несколько элементов '.btn-modal', поскольку код будет запускаться один раз для каждого из них. Я бы предложил изменить '$ ('.btn-modal'). Click();' to '$ ('.btn-modal: first'). Click();', как в моем ответе. – jmar777

2

Просто добавьте в конец вашего $(document).ready() обработчика: [? Jquery как вызвать клик]

$('.btn-modal:first').click(); 
Смежные вопросы