我尝试使用jquery ajax和php从mysql数据库中获取数据。我有 表中的两行(tr)和它们的类名相同。 第一排工作正常。我可以在mysql数据库中搜索产品,并在输入框中获得返回价格和卖出价值。问题是第二行(tr)它没有向mysql数据库发送数据,但是它获得了与第一行相同的输入值。我认为需要在javascript中创建数组以从数据库中获取每行(tr)的数据。任何人都可以帮我解决这个问题,我将不胜感激。为了更好地理解我发布图片。
现在我得到的结果图片: Both row getting same input values and 2nd row not fetching data from db
预期结果图片:Expected Result
properties: {
record: {
type: Object,
notify: true
}
}

$(function(){
$('.productdetail').delegate('.product,.price,.sellprice','keyup',function(){
var tr = $(this).parent().parent().parent();
var product = tr.find('.product').val();
$.ajax({
url:"fetch.php",
method:"post",
data:{product:product},
dataType:"text",
success:function(data)
{
var getarray = jQuery.parseJSON(data);
var price = getarray.price;
var sellprice = getarray.sellprice;
tr.find('.price').val(price);
tr.find('.sellprice').val(sellprice);
//$('#result').html(data);
}
});
});
});

即时使用json编码数组将php数据检索到javascript。
fetch.php
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="productdetail">
<th>Product</th>
<th>Price</th>
<th>Sell price</th>
<tr>
<td><input type="text" class="product" name="product[]" /></td>
<td><input type="text" class="price" type="text" name="price[]"</td>
<td><input type="text" class="sellprice" name="sellprice[]" /></td>
</tr>
<tr>
<td><input type="text" class="product" name="product[]" /></td>
<td><input type="text" class="price" type="text" name="price[]"</td>
<td><input type="text" class="sellprice" name="sellprice[]" /></td>
</tr>
</table>
SQL
$product = strtolower($_POST["product"]);
require_once ('db.php');
$sql = "SELECT * FROM tbproduct WHERE product LIKE '$product'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) { {
$array = array(
'price' => $row["price"],
'sellprice' => $row["sellprice"],
);
echo json_encode($array);
}
}
} else {
echo 'Data Not Found';
}
?>