Php 单击时仅在选项卡()内激发两次

Php 单击时仅在选项卡()内激发两次,php,jquery,html,onclick,Php,Jquery,Html,Onclick,我的页面上有一个名为task1的容器,其中包含幻灯片、后退按钮和下一步按钮。最后一页将有task1作为一系列选项卡(称为tasks的容器)之一。当我省略了tabs()函数时,我的onClick事件可以正常工作。我一添加tabs(),就会触发两次onClick。我检查了其他问题,但最流行的答案“检查代码是否写了两次”是站不住脚的 有什么建议吗?提前谢谢 HTML: php生成幻灯片(.yNext是下一个按钮,.yBack是后退按钮): if($slide==“55”) $slide='1'; 其他

我的页面上有一个名为
task1
的容器,其中包含幻灯片、后退按钮和下一步按钮。最后一页将有
task1
作为一系列选项卡(称为tasks的容器)之一。当我省略了
tabs()
函数时,我的
onClick
事件可以正常工作。我一添加tabs(),就会触发两次
onClick
。我检查了其他问题,但最流行的答案“检查代码是否写了两次”是站不住脚的

有什么建议吗?提前谢谢

HTML:

php生成幻灯片(.yNext是下一个按钮,.yBack是后退按钮):

if($slide==“55”)
$slide='1';
其他的
$slide++;
回声“;
回声“//后退按钮
回声“;
回声“;
回声“;
回声“;
回声“;
回声“//下一个按钮
回声“;

添加
返回false到单击处理程序的末尾,以防止默认操作和事件冒泡。其中一个似乎再次触发处理程序。

这是下一个按钮。我已经在守则中澄清了这一点。谢谢你指出这个模棱两可的地方。为什么你要用
作为按钮,而不仅仅是
?这些类型的输入旨在作为表单的提交按钮。您是否也总是填写#task1或其他?可能是您用.yNext绑定了两次单击事件。作为猜测,请尝试将
return false
放在单击处理程序的末尾。返回false会阻止按钮的默认操作。我不知道为什么在这种情况下有必要这样做,我怀疑你的代码中有更多你没有向我们展示的东西可以解释它。
<div class="content" id="tasks">
  <ul>
    <li><a href="#task1">Review for Quiz</a></li>
    <li><a href="#task2">task 2</a></li>
    <li><a href="#task3">task 3</a></li>
    <li><a href="#task4">task 4</a></li>
    <li><a href="#task5">Blackjack</a></li>
  </ul>                 

  <div class="content" id="task1"></div>
  <div class="content" id="task2"></div>
  <div class="content" id="task3"></div>
  <div class="content" id="task4"></div>
  <div class="content" id="task5"></div>
</div>
$("#tasks").tabs();

$(".content").on('click','.yNext',function(){
    $.ajax({
        url: "task1php.php",
        async: true,
        type: "POST",
        data: {func: 3}
    }).success(function(data){
        alert(data);
        $("#task1").html(data);
    });
});
if($slide == '55')
$slide = '1';
else
    $slide++;   
echo "<div class='yLeftSs'>";
echo "<input class='yBack' type='image' src='images/BackArrow.png' />";//back button
echo "</div>";
echo "<div class='yCenterSs'>";
echo "<img class='ySlides' src='images/Task1_slides/Slide".$slide.".PNG'/>";
echo "</div>";
echo "<div class='yRightSs'>";
echo "<input class='yNext' type='image' src='images/NextArrow.png' />";//next button
echo "</div>";