javascript - 选择器似乎没有返回的选项
问题描述
我正在用纯 Javascript 编写一个函数,我通过 AJAX 提交一些值,如果它返回结果。返回的是一个带有选择器新选项的字符串。我需要从选择器中删除所有选项并将它们替换为返回的集合。
HTML
<select id="mySelector">
....
</select>
JS
(async () => {
....
const res = await fetch(url, {
method: "POST",
headers,
body
});
if (results.ok) {
let myoptions = await results.text();
var myselectr = document.querySelector("#mySelector");
myselectr.innerHTML = "";
myselectr.append(myoptions);
}
})();
它似乎返回选项,我看到它们添加到 DOM 中,但选择器似乎没有将它们视为选项。问题是我实际上需要使用我的 PHP 功能来构建选项。我认为这是因为我将它作为文本字符串返回。不太确定。
我在这里想念什么?
解决方案
append
插入DOMString
s 作为Text节点,导致 HTML 被转义。您应该分配myoptions
给选择的innerHTML
:
(async () => {
....
const res = await fetch(url, {
method: "POST",
headers,
body
});
if (results.ok) {
let myoptions = await results.text();
var myselectr = document.querySelector("#mySelector");
myselectr.innerHTML = myoptions;
}
})();
推荐阅读
- google-bigquery - 如何使用摄取分区表在 BQ 命令行中设置大查询需要分区过滤器
- python - 如何将儒略日期转换为日历日期?
- java-8 - Guava 缓存异步重载
- http - Golang net/http 服务器处理程序热重载
- razor - 使用什么命名空间来获取 View 类?
- wordpress - 如何获取shopify购买按钮所需的ID?
- error-handling - error_get_last() 返回 true - 如何获取错误消息?
- python - 找出 df['attacker_king'] 和 df['defender_king'] 打了多少次
- python - 3.5.2 和 3.6 上的 Python PATHLIB
- mysql - MySQL 查询适用于一台服务器,但不适用于另一台服务器