gpt4 book ai didi

php - 将 PHP 变量作为 Ajax 传递回原始页面上的 JavaScript 变量

转载 作者:行者123 更新时间:2023-11-30 13:30:05 26 4
gpt4 key购买 nike

我有一些 Ajax,它将一个 javascript 变量传递给 getfirstvals.php,然后它对 DB 执行它的操作,并根据我输入的 javascript 变量回显一个值表。我现在想将这些正在回显的 PHP 变量传回发送 javascript 的原始页面,以便将它们转换为 javascript 变量以进行计算。我不确定该怎么做。

以下是它目前的运作方式。

用于选择值的范围“ slider ”:

echo "<input id='slider' type='range'
min=\"$vartime[0]\" max=\"$timemax\" value=\"$vartime[0]\" step='any' />
<span id='range'> </span>"

……

    selectslider.onchange=function changecolour(){ 
showValue(selectslider.value)

.....

<script type="text/javascript">
function showValue(str) {
if (str == "") {
document.getElementById("datatable").innerHTML = "";
return;
}
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("datatable").innerHTML = xmlhttp.responseText;
}
}
if (floorchoice!=0 && floorchoice!=1){
if (floorchoice==2)
{
xmlhttp.open("GET", "getfirstvals.php?q=" + str, true);
xmlhttp.send();

……

这会将“q”发送到 getfirstvals.php,它会在 th DB 中找到与 q 匹配的值,并在与它相同的行中回显所有值。这样,随着 q 的变化,回显值也会发生变化。正如我上面提到的,我希望这些值不仅被回显,而且被传回原始页面上的 javascript 变量,然后可以用于计算。以下是我所说的被回显的值的意思:

        echo "<td>" . $FFlrOpenPlanTemp . "&#8451</td>";
echo "<td>" . $FFlrPCRoomTemp . "&#8451</td>";
echo "<td>" . $FFlrStudyRm6Temp . "&#8451</td>";
echo "<td>" . $FFlrStudyRm8Temp . "&#8451</td>";

最佳答案

看看JSON . PHP 有一个函数:json_encode这将采用 PHP 数据对象(即数组,但不一定是数组)并将其编码为 javascript 对象概念。

然后在您的 JS 中您可以求值(提示:不要使用 eval,现代浏览器有 json 解析器)以将 JSON 数据转换为 Javascript 对象。

示例

如果我在 PHP 中有以下数组:

$array = array( "test1"=> 1, "test2"=> 2, 3, array( 4, 5, 6 ));

然后我json_encode 那个数组,最后得到以下字符串:

{"test1":1,"test2":2,"0":3,"1":[4,5,6]}

这就是您返回给 JS 的内容(又名回显)。您可以通过 Javascript 中的 native 解析函数 JSON.parse 来解析它:

var obj = JSON.parse(phpReturnStr);

。您有一个从 PHP 传入的 JS 对象。

关于php - 将 PHP 变量作为 Ajax 传递回原始页面上的 JavaScript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7083998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com