我最近正在从事一个网站项目。因此,我有一个包含所有html代码的website.php,一个function.php和saveArray.js。在website.php中,我正在打印一个带有底部按钮的html表。通过单击按钮,我进入saveArray.js,在其中将所有表数据保存在数组中。
使用此代码
var arrString = JSON.stringify(tableData);
var request = new XMLHttpRequest();
request.open('post', 'function.php', true);
request.setRequestHeader('Content-Type', 'application/x-www-form-
urlencoded');
request.send('daten=' + arrString);
我将JS数组发布到function.php。在function.php中,我对数组做一些事情,并且在if语句中我想显示一个模态。
模式本身可以工作,但是我想在website.php页面上显示它。不会发生这种情况,因为我目前正在使用function.php。
我该如何解决?
编辑:在我的数组中是一个ID,我想检查此ID是否已在数据库中。根据此结果,我想显示模态并在必要时上传数据。所有检查都在function.php中进行
答案 0 :(得分:0)
我想您想将函数返回的字符串(模式PHP代码)注入当前页面(“ website.php”)中的function.php中。 为此,您必须在请求完成后注入XMLHttpRequest给出的响应。
假设我们要在
中添加所有内容 xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML =
this.responseText;
}
};
答案 1 :(得分:0)
看,您不处理请求的响应,因此处理响应,并从function.php恢复请求的状态,如果数据已保存,请打开模型。您无需转到function.php页面。查看代码
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
// this is response of the request //now check it
//Suppose you returned " data saved" as response from function.php
if(this.responseText='data saved'){
//Open model here
}
}
};
xhttp.open("POST", "function.php", true);
xhttp.send();