Php 为什么Jquery脚本在第一次单击按钮后不执行?

Php 为什么Jquery脚本在第一次单击按钮后不执行?,php,jquery,Php,Jquery,当我单击index.php的next按钮时,jquery将执行其工作,发出警报并在div'result'中加载check.php的内容 但是,现在当我再次点击下一步按钮时,什么都没有发生,没有警报,为什么?我希望警报应该再次显示,jquery应该是load check.php,就像第一次单击时一样。这是我的密码: 这是index.php <?php session_start(); ?> <html> <head> <script src="js

当我单击index.php的next按钮时,jquery将执行其工作,发出警报并在div'result'中加载check.php的内容

但是,现在当我再次点击下一步按钮时,什么都没有发生,没有警报,为什么?我希望警报应该再次显示,jquery应该是load check.php,就像第一次单击时一样。这是我的密码:

这是index.php

<?php
session_start();
?>
<html>
<head>
    <script src="js/jquery-1.3.2.js"></script>
    <script> 
    $(document).ready(function()
    {
            $("button[name='next']").click(function() //when button clicked
            {
                var count= $('button[name=next]').val();      //value of button
                alert('button clicked');
                    $.ajax(
                    {url:"check.php",type: "POST",data: 'count='+ count,success:function(result)
                                                {
                                                        $("#result").html(result);
                                                }
                    });
            });             
    });
   </script>
</head>
<body>
    <?php   $_SESSION['count']='0'; ?>      
    <div id="result">
        <button name="next" value="<?php echo ($_SESSION['count']);?>">Next</button>
    </div>
</body>
</html>

$(文档).ready(函数()
{
$(“按钮[name='next'])。单击按钮时单击(function()//
{
var count=$('button[name=next]')。val();//按钮的值
警报(“点击按钮”);
$.ajax(
{url:“check.php”,键入:“POST”,数据:'count='+count,成功:函数(结果)
{
$(“#结果”).html(结果);
}
});
});             
});

当您只想更新
$('button[name=next]')
val()
时,您可以从php文件中回显并更新它,而不是每次都重写按钮标记

我宁愿这样做

$.ajax({
    url:"check.php",
    type: "POST",
    data: 'count='+ count,
    success:function(result){
         $('button[name=next]').val(result);
        // $("#result").html(result);
    }
});
PHP

 <?php session_start();
       $_SESSION['count']=$_POST['count']+1;
       echo $_SESSION['count'];

试试这样的方法

     $("#result").on('click',"button[name='next']",function(){
        //.... your code goes here
     }
原因:应用于按钮的单击事件将被未绑定单击事件的新按钮替换

解决方案:

  • 在新创建[动态创建]上应用单击事件。请参见上述代码[jquery中的函数]
  • 不要替换按钮,只替换您的内容

  • 这应该可以

    还可以检查的可能副本,并且您确实应该使用最新的jQuery版本。请尝试使用id而不是名称。
         $("#result").on('click',"button[name='next']",function(){
            //.... your code goes here
         }
    
    $(document).on('click',"button[name='next']",function()