Javascript Ajax调用返回相同的结果

Javascript Ajax调用返回相同的结果,javascript,php,jquery,sql,ajax,Javascript,Php,Jquery,Sql,Ajax,我有一个jquery模式按钮,我想在这里显示数据库中的信息 我在数据库中有一个字段,我希望通过它标识的所有内容都称为“编号” 模式按钮显示在一个表中,该表已从显示所有条目的SQL查询循环 while ($row = getarray($res)){ <tbody> <tr> <td> <? $row["state"] ?> </td> <td><? $row["number"] ?&g

我有一个jquery模式按钮,我想在这里显示数据库中的信息

我在数据库中有一个字段,我希望通过它标识的所有内容都称为“编号” 模式按钮显示在一个表中,该表已从显示所有条目的SQL查询循环

while ($row = getarray($res)){

    <tbody>
    <tr>
    <td> <? $row["state"] ?> </td>
    <td><? $row["number"] ?></td>
    <td>
    <button type="button" class="btn btn-primary" onclick="detailsmodal(<?
    $row["number"])">Description</button>
  </td>
  </tr>


<!-- Modal Button -->
<button type ="button" class="btn btn-primary" onclick="detailsmodal(<?= $row['number']; ?>)>Modal Button</button>
<!-- Code for modal -->
<?php
$number =$_POST["number"];
$number =(int)$number;
$modalsql = myquery($dbvariable,"SELECT * FROM myTable WHERE Number = '$number' ");
$result2 = myfunction_fetch_array($modalsql);
ob_start();

?>

<div class="modal fade" id="myModal" data-keyboard="false" data-backdrop="static" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
  <div class="modal-header">
    <button type="button" class="close" onclick="closeModal()" aria-label="Close"><span aria-hidden="true">&times;</span></button>
    <h4 class="modal-title"> <?= $result2['number']?></h4>
  </div>
  <div class="modal-body">
    <p><strong>Field 1:</strong><?= $result2['number']?> </p>
    <p><strong>Field 2:</strong><?= $result2['field_2']?>  </p>
    <p><strong>Field 3</strong><?= $result2['field_3']?> </p>
    <p><strong>Field 4:</strong><?= $result2['field_4']?> </p>
    <p><strong>Field 5:</strong><?= $result2['field_5']?></p>
    <p><strong>Field 6:</strong><?= $result2['field_6']?> </p>
    </div>
    <div class="modal-footer">
     <button type="button" class="btn btn-default" onclick="closeModal()">Close</button>
  </div>
  </div>
  </div>
  </div> 

<?php 
ob_get_clean();
?>

<!-- Script for the modal-->
<script>
    function detailsmodal(number){

        var data = {"number" : number};
        jQuery.ajax({
        url : "/page1/page2",
        method : "post",
        data : data,
        success: function(){
            jQuery("body").append(data);
            jQuery("#myModal").modal("toggle");
        },
        error: function(){
            alert("Something went wrong!");
        }
        });
    }
</script>
while($row=getarray($res)){

请尝试使用以下代码,您的代码中有很多打字错误

<?php while ($row = getarray($res)){ ?>

        <tbody>
          <tr>
            <td> <? $row["state"] ?> </td>
            <td><? $row["number"] ?></td>
            <td>
              <button type="button" class="btn btn-primary" onclick="detailsmodal(<?=
              $row["number"]) ?>">Description</button>
            </td>
          </tr>


          <!-- Modal Button -->
          <button type ="button" class="btn btn-primary" onclick="detailsmodal(<?= $row['number']; ?>)">Modal Button</button>
          <!-- Code for modal -->
          <?php
          $number =$_POST["number"];
          $number =(int)$number;
          $modalsql = myquery($dbvariable,"SELECT * FROM myTable WHERE Number = '".$number."' ");
          $result2 = myfunction_fetch_array($modalsql);
          ob_start();

          ?>

          <div class="modal fade" id="myModal" data-keyboard="false" data-backdrop="static" role="dialog">
            <div class="modal-dialog">
              <!-- Modal content-->
              <div class="modal-content">
                <div class="modal-header">
                  <button type="button" class="close" onclick="closeModal()" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                  <h4 class="modal-title"> <?= $result2['number']?></h4>
                </div>
                <div class="modal-body">
                  <p><strong>Field 1:</strong><?= $result2['number']?> </p>
                  <p><strong>Field 2:</strong><?= $result2['field_2']?>  </p>
                  <p><strong>Field 3</strong><?= $result2['field_3']?> </p>
                  <p><strong>Field 4:</strong><?= $result2['field_4']?> </p>
                  <p><strong>Field 5:</strong><?= $result2['field_5']?></p>
                  <p><strong>Field 6:</strong><?= $result2['field_6']?> </p>
                </div>
                <div class="modal-footer">
                 <button type="button" class="btn btn-default" onclick="closeModal()">Close</button>
               </div>
             </div>
           </div>
         </div>

         <?php
         ob_get_clean();
         ?>

         <!-- Script for the modal-->
         <script>
          function detailsmodal(number){

            var data = {"number" : number};
            jQuery.ajax({
              url : "/page1/page2",
              method : "post",
              data : data,
              success: function(){
                jQuery("body").append(data);
                jQuery("#myModal").modal("toggle");
              },
              error: function(){
                alert("Something went wrong!");
              }
            });
          }
        </script>


ajax是我提交的代码的最后一部分。无论我在表中单击哪个按钮,我都只会在调试时从数据库中获取第一个条目,具体问题发生在哪里?这里生成的客户端代码是什么?在浏览器的调试工具中,当您检查网络请求时,AJAX请求具有您期望的数据?在这些工具中调试JavaScript时,
number
的值是多少?它是您期望的值吗?AJAX请求调用的PHP代码是什么?它作为响应返回的是什么?您可以在这里进行大量调试。问题在第1行of您发布的代码。您正在传递一个用php计算的带有
$row['number']的“数字”;
到函数
detailsmodal
。您一直在传递相同的数字,所以您总是会得到相同的结果。我编辑了我的代码,我有一个变量,它循环遍历数据库结果并动态创建表。所有条目都有不同的数字。@jumpman8947:您的编辑显示代码中有一个键入错误。您打开了一个PHP短标记