2016-11-14 6 views
0

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

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

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

Если я сначала нажму на второй элемент, выпадающее меню также перестанет работать, пока я не нажму первый элемент.

Вот код:

$('#usuarios').click(function() { 
 
    $('#main').load('cns_usuarios.html'); 
 
}); 
 

 
$('#canal').click(function() { 
 
    $('#main').load('canal.html'); 
 
}); 
 

 
$('#campos').click(function() { 
 
    $('#main').load('cns_campos.html'); 
 
});
<link href='http://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css' rel='stylesheet'> 
 
<link href='index.css' rel='stylesheet'> 
 
<script src='https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js'></script> 
 
<script src='http://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js'></script> 
 

 
<ul class='breadcrumb menu'> 
 
    <li id='usuarios'><a href='#'>Listar Usuários</a> 
 
    </li> 
 

 
    <li class='dropdown'> 
 
    <a class='dropdown-toggle' data-toggle='dropdown' href='#'> 
 
     Configurações 
 
     <span class = 'caret'></span> 
 
    </a> 
 

 
    <ul class='dropdown-menu'> 
 
     <li id='canal'><a href='#'>Canal</a> 
 
     </li> 
 
     <li id='campos'><a href='#'>Campos</a> 
 
     </li> 
 
    </ul> 
 
    </li> 
 

 
    <li><a href='../index.html'>Sair</a> 
 
    </li> 
 
</ul> 
 

 
<div id='main' class='main'> 
 
</div>

Код содержит некоторые вещи в португальский, но это в значительной степени не имеет значения, так просто игнорировать его.

Кроме того, я добавил несколько своих вещей, но только на стороне css. Если кто-то подумает, что это может вызвать мою проблему, я покажу эту часть кода.

+0

Загрузите JS на каждой странице или сделать общую компоновку и импорт на каждой странице – C2486

+0

вы можете легко попробовать с помощью вставить код JS в консоли, где ваше выпадающее меню не работает – C2486

+0

положите jquery и javascript javascript в нижнюю часть тела и нет '' в '

' instead '
' – RizkiDPrast

ответ

0

Попробуйте это:

<script> 
    $(document).on('click', '#usuarios', function() { 
     $('#main').load('cns_usuarios.html'); 
    }); 

    $(document).on('click', '#canal', function() { 
     $('#main').load('canal.html'); 
    }); 

    $(document).on('click', '#campos', function() { 
     $('#main').load('cns_campos.html'); 
    }); 

</script> 
+0

Пробовал это, все еще получил ту же проблему. – ayrton

+0

проверить '# main' div добавить любой текст html' $ ('# main'). Html ('Это тест.'); ' –

+0

Когда я добавляю текст вместо использования функции загрузки, меню работает абсолютно нормально. – ayrton

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