У меня есть следующая структура для аккордеона:
<div class= "accordion">
<div class = "h3">
<div class = 'id'>
<span class ="emp_data"><b> Full Name: </b> {FULL NAME} </span> |
<span class ="emp_data" ><b>Employee ID: </b> {ID} </span> |
<span class ="emp_data" ><a class= "assign" href = "../assign.php?sup=000000 " >Assign </a></span>
</div>
</div>
<div>
<ul>
<li>ITEM 1</li>
<li>ITEM 2</li>
<li>ITEM 2</li>
</ul>
</div>
</div >
Я использую следующее, чтобы зафиксировать щелчок на кнопке, но не работает:
$(".accordion a").click(function() {
window.location = $(this).attr('href');
return false;
});
Может кто-то, пожалуйста, помогите мне понять, почему это не работает?
Для тестирования события вы можете сделать что-то вроде этого
$(".accordion a").click(function() {
console.log("clicked");
});
Затем вы можете увидеть, как работает ваш код и решать проблемы.
Ну, это уволили. Я просто поставил предупреждение. Смотрите этот скрипт
$(".accordion a").click(function() {
alert("11111");
window.location = $(this).attr('href');
return false;
});
Возможно, на вашей странице есть конфликт js.
ОБНОВИТЬ:
<div class= "accordion">
<div class = "h3">
<div class = 'id'>
<span class ="emp_data"><b> Full Name: </b> {FULL NAME} </span> |
<span class ="emp_data" ><b>Employee ID: </b> {ID} </span> |
<span class ="emp_data" ><a class= "assign" href = "javascript:;" onclick="goAnyWhere('../assign.php?sup=000000');">Assign </a></span>
</div>
</div>
<div>
<ul>
<li>ITEM 1</li>
<li>ITEM 2</li>
<li>ITEM 2</li>
</ul>
</div>
</div>
function goAnyWhere(hrefs) {
alert("11111 "+hrefs);
window.location = hrefs;
return false;
}
Смотрите эту скрипку.Try его согласно вашему требованию.
$(document.body).on('click',".accordion a",function() {/*...*/});
или установить обработчик после инициализации аккордеона