2016-11-27 2 views
0

Я новичок в Javascript, и мне нужно создать предупреждение для пользователя, когда вы нажимаете на menu2 на моей странице, чтобы вернуть сообщение, для этого я решил использовать модальный плагин, совместимый со всеми браузерами. Plugin modal Код ниже был все, что я может дойти до сих пор, но безуспешно. Вот мой HTMLКак создать модальное оповещение с помощью sweetalert?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> 
 

 
<ul id='menu'> 
 
    <li id='menu1'><a href='/web/front/helpdesk.public.php' title="Home" class='itemP'>Home</a> 
 
    </li> 
 
    <li id='menu2'><a href='/web/front/helpdesk.public.php' title="Cria um chamado" class='itemP'>Cria um chamado</a> 
 
    </li> 
 
    <li id='menu3'><a href='/web/front/ticket.php' title="Chamados" class='itemP'>Chamados</a> 
 
    </li> 
 
    <li id='menu4'><a href='/web/front/reservationitem.php' title="Reservas" class='itemP'>Reservas</a> 
 
    </li> 
 
    <li id='menu5'><a href='/web/front/helpdesk.faq.php' title="FAQ" class='itemP'>FAQ</a> 
 
    </li> 
 
</ul>

А вот мой Javascript

echo '<script type="text/javascript">'; 
 
    echo'setTimeout(function() { 
 
    swal 
 
    ("Return the alert test !", 
 
    "Message!", 
 
    "success");'; 
 
    echo '}, 1000); 
 
    </script>';

Возвращение чеку, работающих на этой странице.

enter image description here

Я попытался это так, но пока безуспешно.

 echo '<script type="text/javascript">'; 
 
    echo'setTimeout(function() { 
 
    echo '$(document).ready(function() { 
 
    echo '$('#menu2').click(function(event) { 
 
    swal 
 
    ("Return the alert test !", 
 
    "Message!", 
 
    "success");'; 
 
    echo '}, 1000); 
 
    </script>';

Ошибка при попытке запустить решение в моем PHP.

enter image description here

Я не хочу, чтобы метод можно назвать действие по умолчанию события не срабатывает. Для этого используйте event.preventDefault(); Но это не работает для меня. Предупреждение не появляется. у кого-нибудь есть решение?

echo '<script type="text/javascript">'; 
 
echo '$(document).ready(function(){'; 
 
echo ' $("#menu2").click(function(event){'; 
 
echo '   event.preventDefault()';   
 
echo '  swal("Return the alert test !", "Message!", "success")'; 
 
echo ' })'; 
 
echo '});'; 
 
echo '</script>';

+0

Человек не требует SetTimeout() с помощью document.ready(). Также отсутствуют многочисленные конечные скобки. Проверьте консоль. – Lain

ответ

1

Ваше сырье JQuery должен выглядеть следующим образом (правильно закрытые функции):

$(document).ready(function(){ 
    $('#menu2').click(function(event){ 
     swal("Return the alert test !", "Message!") 
    }) 
}); 

Однако вы повторить его, до вас. Также вы не требуете setTimeout() с помощью document.ready().

Edit:

echo '<script type="text/javascript">'; 
echo '$(document).ready(function(){'; 
echo ' $("#menu2").click(function(event){'; 
echo '  swal("Return the alert test !", "Message!")'; 
echo ' })'; 
echo '});'; 
echo '</script>'; 
+0

Я тестировал в NetBeans, давая синтаксическую ошибку в php, не работал для меня. echo ' '; –

+0

Возможно, из-за одиночных кавычек вокруг menu2. Человек не должен смешивать разные разделители строк в разных языках. – Lain

+0

Я тестировал здесь, не решил его для меня, пока я могу только вернуть предупреждение на странице, используя мой пример. Что лучше для вас лучше понять? –

0

Я был в состоянии сделать модальное предупреждение sweetalert работы, следуя ответы, полученные здесь. У меня было лучшее понимание Javascript и в конкретном event.preventdefault, попадающем на код ниже, который отлично работал для меня.

?> 
 
<script type="text/javascript"> 
 
    $(document).ready(function() { 
 
    $("#menu2").click(function(event) { 
 
     event.preventDefault(); 
 
     swal("Many thanks to everyone for making me a better programmer.!", "Message", "success"); 
 
    }) 
 
    }); 
 
</script> 
 
<?php

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