2013-07-31 5 views
1

Я пытаюсь автоматически щелкнуть ссылку, когда страница загружается с помощью jQuery. Я успешно это сделал в прошлых проектах, но сейчас я не могу заставить его работать. Вот мой код:Нажмите ссылку, используя jQuery

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $(".btn-warning").trigger("click"); 
    }); 
</script> 

<!-- Modal --> 
<a href="#myModal2" role="button" class="btn btn-warning" data-toggle="modal">Confirm</a> 
<div id="myModal2" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel2" aria-hidden="true"> 
    <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button> 
     <h3 id="myModalLabel2">Alert Header</h3> 
    </div> 
    <div class="modal-body"> 
     <p>Body goes here...</p> 
    </div> 
    <div class="modal-footer"> 
     <button data-dismiss="modal" class="btn green">OK</button> 
    </div> 
</div> 

Я считаю, что data-toggle="modal" часть кода Мессинг вещи. Но если я удалю это, модальность не работает вообще. Может быть, мне нужно использовать что-то отличное от значения click?

Благодаря

+0

Вы используете bootsrap? – doitlikejustin

+0

Почему вы выбираете кнопку с помощью своего класса? – Zac

+0

это будет работать, только если действие click определено jquery слишком – r043v

ответ

2

Так как вы сказали, что вы используете Bootsrap. Я бы предложил следующее (ниже) вместо использования события click.

<script type="text/javascript"> 
    jQuery(window).load(function($){ 
     $('#myModal2').modal('show'); 
    }); 
</script> 

Fiddle: http://jsfiddle.net/RsdpT/1/

Другой Fiddle (благодаря @FakeRainBrigand): http://jsfiddle.net/nHD9U/2/

+0

Просто попробовал это, и к сожалению, это не сработало. Любые другие идеи? – three3

+0

Является ли 'id' вашего модального' '# myModal2' – doitlikejustin

+0

Нет, нет идентификатора. Всего 2 класса – three3

0

Вы могли бы попробовать:

$(".btn-warning").click(); 
+1

'.click()' это просто ярлык для '.trigger (« click »)'. – Jasper

+0

Просто попробовал, но это не сработало. – three3

+0

Этот ответ определенно ** заслуживает ** проголосовать, но мне не нравится проголосовать (даже в «мести»). По крайней мере, здесь вы показали какой-то код и, казалось бы, попытались помочь OP. (вы заметили, что ни один проголосовавший от меня по-прежнему не влияет на вашу репутацию? - все они были удалены) –

0

Как насчет

$(".btn-warning")[0].click(); 
+0

Это тоже не сработало. Спасибо, хотя – three3

+0

@ Jasper не соответствует действительности: http://jsfiddle.net/DFRqY/ – Dom

+0

@ Jasper У них действительно есть свой собственный метод '' .click() '(https://developer.mozilla.org/en-US /docs/Web/API/HTMLElement.click). Не уверен, насколько хорошо он работает с привязками jQuery. –

0

Почему бы не просто делать то, что вы хотите прямо:

$(document).ready(function(){ 
    location.hash = "myModal2"; 
}); 
Смежные вопросы