添加选项以选择AJAX接收的框数据的方法是什么
.HTML:
<select id="options"></select>
j查询:
$.ajax({
type: "POST",
url: "ajax/addCustDetail.php",
data: {customerId},
cache: false,
success: function(html)
{
$("#options").html(html);
}
});
有两种方法可以做到这一点:
-
通过从
addCustDetail.php
返回字符串,如下所示:$response = '<option value="1">One</option><option value="2">Two</option>';
并且此$response
是保留的,在这种情况下,您可以简单地在jQuery中使用它,例如:
$("#options").html(html);
- 如果你从
addCustDetail.php
返回一个 json 数组,在这种情况下,你可以在 jquery 中解析它并迭代它并创建选项,然后将它们添加到选择中。
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>" ;
}
您可以像这样将子元素附加到 select 元素:
首先,向选择元素添加一个 id:
<select id="myselect"></select>
然后像这样附加子项:
var selectElement = document.getElementById("myselect");
var newOption = document.createElement("option");
newOption.innerHTML = "New option!";
selectElement.appendChild(newOption);
假设您现在从 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);
}