Javascript 如何在PHP中添加选项以选择从AJAX请求接收的表单

Javascript 如何在PHP中添加选项以选择从AJAX请求接收的表单,javascript,jquery,ajax,html,jquery-ajaxq,Javascript,Jquery,Ajax,Html,Jquery Ajaxq,添加选项以选择AJAX接收的框数据的方法是什么 HTML: jQuery: $.ajax({ type: "POST", url: "ajax/addCustDetail.php", data: {customerId}, cache: false, success: function(html) { $("#options").html(html); } }); 可以将子元素附加到select元素,如下所示: 首先,向select元素添加一个id: &l

添加选项以选择AJAX接收的框数据的方法是什么

HTML:

jQuery:

$.ajax({
  type: "POST",
  url: "ajax/addCustDetail.php",
  data: {customerId},
  cache: false,
  success: function(html)
  {
    $("#options").html(html);
  } 
});

可以将子元素附加到select元素,如下所示:

首先,向select元素添加一个id:

<select id="myselect"></select>
假设您现在从ajax请求接收到一个数组,您可以创建一个循环并使用上面的代码添加选项。 例如:

for(let i = 0; i < 7; i++) {
   var newOption = document.createElement("option");
   newOption.innerHTML = response[i].name;
   newOption.setAttribute("value", response[i].value);
   selectElement.appendChild(newOption);
}

有两种方法可以做到这一点:

通过从addCustDetail.php返回字符串,如下所示:

如果您从addcustdail.php返回一个json数组,那么您必须在jquery中解析它并迭代它,创建选项,然后将它们添加到select中。 PHP端代码:

$cid=$_POST['cid'];
$query="SELECT * from customer_shipping_address WHERE STransNo=$cid";        
$result1 = mysqli_query($con, $query);
while ($row = mysqli_fetch_array($result1, MYSQLI_ASSOC)) {
    echo "<option value=".$row['TransSlNo'].">".$row['ShipName']."</option>" ;   
}

您收到的html中有什么内容请让我们知道响应的样子??它是一个JSON对象还是一个数组?你做得对。您的php可能只是返回了错误的值,因为在您的情况下,它应该返回例如“Billy”您的响应示例是什么?仅选项值或选项的标记?若要添加选项,您可能需要使用$'options'.appendhtml。请看,OP显然是通过AJAX获取新选项数据的,因此您的示例并不是一个好例子。我知道,可能是OP没有从addcustdail.php返回正确的值,我正试图解释同样的事情。
$response = '<option value="1">One</option><option value="2">Two</option>';
    $("#options").html(html);
$cid=$_POST['cid'];
$query="SELECT * from customer_shipping_address WHERE STransNo=$cid";        
$result1 = mysqli_query($con, $query);
while ($row = mysqli_fetch_array($result1, MYSQLI_ASSOC)) {
    echo "<option value=".$row['TransSlNo'].">".$row['ShipName']."</option>" ;   
}