我的主文件的AJAX名为:
<div id="toAdd">
<script>
document.getElementById("elementID").addEventListener("click", function () {
let request = new XMLHttpRequest();
request.open("GET", "./core/handler_NAME.php?f_VALUE=Y");
request.onreadystatechange = function () {
if (this.readyState === 4 && this.status === 200) {
document.getElementById("toAdd").innerHTML += ' ' + this.responseText;
}
};
request.send();
});
</script>
在文件handler_NAME.php中,我捕获了GET并执行以下操作:
//....
foreach ($dataDBvalues as $row) {
$data .= ' <script>
let elem = document.createElement("div");
elem.id = "myElem' . $row['id'] . '";
document.getElementById("toAdd").appendChild(elem);
$.ajax({
url: "./../json/data_NAME.php?f_VALUE=' . $row['id'] . '",
method: "GET",
success: function (data) {
//..... Code for ChartJS
}
echo $data; //
和文件data_NAME.php返回我上面使用的JSON数据。
当我访问我的网站时,仅通过按钮单击即可显示的内容为 dataDBvalues 的每种类型为我创建了HTML文件中的正确内容和正确的ID-Div 。
但是为此,我可以看到innerHTML集中的JS代码无法编译,因为HTML中没有 appendedChild 。仅存在单独的 <script>
-区域。
因此document.createElement("div");
在HTML中根本不存在
btw:我的图表JS,SQL语句和JSON的AJAX本身就可以正常工作