2016-09-24 4 views
0
<li class="nav-parent"> 
    <a><i class="fa fa-list-alt" aria-hidden="true</i><span>Forms</span> 
    </a> 
    <ul class="nav nav-children" id="dd"> 
     <li> 
      <a href="{:url('edit/Form/getone')}"><span class="text"> Editors</span> 
      </a> 
     </li> 
     <li> 
      <a href="{:url('edit/Form/getone')}"><span class="text"> Editors</span> 
      </a> 
     </li> 
    </ul> 
</li> 

Привет, как вы можете видеть, у меня есть панель навигации, я использую функцию щелчка, но когда я нажимаю, он дважды предупреждает. кто-нибудь знает почему? благодаря литийЗачем его дважды щелкали?

$('li.nav-parent ul li a').click(function(){ 
    alert(1); 

    }); 
+0

у вас отсутствует «>» для тега на второй строке. Не уверен, что это вызывает первый , чтобы не соответствовать должным образом с

+0

он работает, лучше создать jsfiddle –

ответ

1

Я думаю, есть проблема в вашем HTML Построить рядом

<li class="nav-parent"> 
    <a><i class="fa fa-list-alt" aria-hidden="true</i><span>Forms</span> 
</a> 

В коде выше <i class="fa fa-list-alt" aria-hidden="true</i> не правильно закрыта.

Try Ниже один

$(function(){ 
 
    $('li.nav-parent ul li a').click(function(e) { 
 
     e.preventDefault(); 
 
     alert(1); 
 
    }); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<li class="nav-parent"> 
 
    <a> 
 
    <i class="fa fa-list-alt" aria-hidden="true"></i> 
 
    <span>Forms</span> 
 
    </a> 
 
    <ul class="nav nav-children" id="dd"> 
 
    <li> 
 
     <a href="{:url('edit/Form/getone')}"> 
 
     <span class="text"> Editors</span> 
 
     </a> 
 
    </li> 
 
    <li> 
 
     <a href="{:url('edit/Form/getone')}"> 
 
     <span class="text"> Editors</span> 
 
     </a> 
 
    </li> 
 
    </ul> 
 
</li>

0

ошибка в коде:. <a><i class="fa fa-list-alt" aria-hidden="true</i><span>Forms</span> отсутствующего "перед </i> после исправления, предупреждения только один раз https://jsfiddle.net/u4s7wmhg/1/

0

как указал другим пользователем вы потеряли > в своем коде.

Также , что вы пытаетесь выделить в JQuery, который имеет два матча (распространение событий из-за незакрытые скобки), т.е. $('li.nav-parent ul li a') имеет матчи для каждого li и это вызывает событие стрелять дважды для каждого элемента li > a мыши.

+0

@Julian спасибо за редактирование .. в следующий раз попробуем мое лучшее ... – RohitS

0

спасибо, ребята. но это не из-за этого. :(Причина, по которой я только что узнал, заключается в том, что я дважды загрузил эту функцию щелчка где-то где-то, но спасибо за ваши усилия.

+0

Итак, почему вы приняли другой ответ? – j08691

+0

причина - это тот, кто первым комментирует, получит мое согласие, и это мой принцип. Также за то, что я написал, он меня исправил. –

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