>source

MySql 데이터베이스에서 PHP 및 이 입력에 대한 데이터를 검색할 때 Ajax는 항상 다음 입력에 표시되지만 Ajax code에서 언급한 div에 표시된다고 가정합니다.

이 사진은 내 문제를 명확하게 설명할 것입니다. 영어가 모국어가 아닙니다. 죄송합니다.

내 HTML code:

              <div class="form-group">                    <label class="control-label col-lg-4"></label>                      <div class="col-lg-4">                        <div class="box">                          <header>                            <h5>تفاصيل الطلب</h5>                            </header>                            <div class="body">                              <div class="form-group">                              <label class="control-label col-lg-2">الصنف</label>                                  <div class="col-lg-10">                                      <select id="itemname" name="itemname[]" class="form-control">                                        <option disabled selected>اختر الصنف</option>                                        <?php echo getValues($pdo); ?>                                      </select>                                  </div>                              </div>                              <div class="form-group">                                <label class="control-label col-lg-2">السعر</label>                                <div class="col-lg-10">                                  <input type="text" id="price" name="price[]" placeholder="-" readonly class="form-control">                                </div>                              </div>                              <div class="form-group">                                <label class="control-label col-lg-2">الكمية</label>                                <div class="col-lg-10">                                  <input class="form-control" type="text" name="quantity[]" id="quantity" value="0" min="1">                                </div>                              </div>                            </div>                            </div>                      </div>                    </div>

PHP 파일:

<?php
    require 'DBConnection.php';
    $code='';
    if(isset($_POST["code"])){
        $id= $_POST["code"];
        $get_c= $pdo->prepare("SELECT * FROM all_menu WHERE `item_name`= '".$id."'");
        $get_c->execute();
        while ($row= $get_c->fetch()) {
            $code .= $row['price'];
        }
        echo $code;
    }
?>

JQuery code:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script><script>$(document).ready(function(){
  var i=1;
    $('#add').click(function(){
    i++;
    $('#append').append('<div class="form-group"><label class="control-label col-lg-4"></label><div class="col-lg-4"><div class="box"><header><h5>تفاصيل الطلب</h5></header><div class="body"><div class="form-group"><label class="control-label col-lg-2">الصنف</label><div class="col-lg-10"><select id="itemname'+i+'" name="itemname[]" class="form-control"><option disabled selected>اختر الصنف</option><?php echo getValues($pdo); ?></select></div></div><div class="form-group"><label class="control-label col-lg-2">السعر</label><div class="col-lg-10"><input type="text" id="price'+i+'" name="price[]" placeholder="-" readonly class="form-control"></div></div><div class="form-group"><label class="control-label col-lg-2">الكمية</label><div class="col-lg-10"><input class="form-control" type="text" name="quantity[]" id="quantity" value="0" min="1"></div></div></div></div></div></div>');
    $('#itemname'+i+'').change(function(){
      var code= $(this).val();
       $.ajax({
          type: 'POST',
          url: 'pages/GetPrice.php',
          data:{code:code},
          success: function(data){
            document.getElementById("price"+i+"").value= data;
          },
          error: function (jqXHR, textStatus, errorThrown){
            alert(errorThrown);
          }
       });
    });
    });
});
</script>

$('#append').append로 시작하는 줄에서 JS 연결과 PHP 보간을 보고 있습니다. 100% 맞을 수도 있지만 디버그하기는 정말 어렵습니다. DOM을 검사하여 예상한 것과 같은지 확인하십시오.

Chris Haas2021-10-21 18:57:09

그렇습니다. 하지만 DOM은 아닙니다. 방금 ID가 아닌 요소를 가져오기 위해 클래스를 사용해야 한다는 것을 알았습니다.

Hazem Behairy2021-10-21 18:57:09
  • 이전 typescript : 응답 본문은 올바른 개체 수 배열과 함께 제공되지만 개체가 비어 있습니다.
  • 다음 database : 파티션 키로 증분(순차)하지만 고유 ID가 핫 파티션 문제를 일으키나요?