Jquery Hide And Show не работает

0

это мой jquery

$(document).ready(function () { 
    $('#lnkButtonSchools').click(function () {
        var dvSchools = $('#divSchools');
        dvSchools.toggle();
    });
});

это объявление div whics, которое я хочу переключить

 <div id="divSchools" runat="server" style="display:none">

это кнопка привязки

 <a id="lnkButtonSchools" runat="server" class="span8 pad2" style="margin-left:0px;font-size:12px;">Limit by School</a>

При нажатии кнопки привязки div не появляется. Какая ошибка?

  • 0
    У меня работает: jsfiddle.net/7adkG Вы уверены, что загружаете jquery?
Теги:
toggle

3 ответа

2
Лучший ответ

Попытайтесь предотвратить действие якоря по умолчанию с помощью .preventDefault() например:

$('#<%= lnkButtonSchools.ClientID %>').click(function (e) {
    e.preventDefault();
    var dvSchools = $('#<%= divSchools.ClientID %>');
    dvSchools.toggle();
});

Кроме того, используйте <%= lnkButtonSchools.ClientID %> для получения правильного идентификатора якоря, поскольку ваш режим идентификатора клиента не является статическим,

  • 0
    С идентификатором клиента все работает нормально. даже e.preventdefault () не требуется.
1

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

$(document).ready(function () { 
  $('#<%=lnkButtonSchools.ClientID %>').click(function () {
     $('#<%=divSchools.ClientID %>').toggle();
     return false; 
  });
});
0

Проблема может заключаться в том, что тег привязки получает триггер и загружает страницу.

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

$(document).ready(function () { 
  $('#lnkButtonSchools').click(function () {
     var dvSchools = $('#divSchools');
     dvSchools.toggle();
     return false; // this code
  });
});

Это заставит код вернуться на текущую страницу и остановить дальнейшее выполнение. Таким образом, остановка метки привязки для загрузки новой страницы. Надеюсь, таким образом div получит display: block так как ваш код идеально подходит; если вы правильно подключили свою веб-страницу к файлу.js.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню