我正在使用 JQuery 的手风琴模块编写表单向导。问题是我想覆盖手风琴菜单上的任何鼠标点击,以便在手风琴显示下一部分之前首先验证表单。
我尝试了以下方法:
$('#accordion h3').unbind();
$('#accordion h3').click(function() {
if (validate())
{
$("#accordion").accordion('activate', 2);
}else
{
alert("invalid form");
}
}
但是上面的代码不起作用。手风琴的内置点击事件仍然被调用,无论表单是否有效,手风琴都会显示下一部分。
我还尝试了以下代码:
$('#accordion h3').click(function(event) {
if (validate())
{
$("#accordion").accordion('activate', 2);
}else
{
alert("invalid form");
}
event.stopPropagation();
});
但是 stopPropagation() 调用似乎根本不会影响手风琴行为,无论表单是否有效,都会显示下一部分。
知道我可能做错了什么吗?