我正在尝试在 onclick 事件后使用 Javascript 更新网页的 innerHTML。我的 Javascript (java.js) 使用此代码访问 PHP 页面,该页面回显了 innerHTML 中的文本。问题是,我想更新两个项目(一个“颜色”表和一个“项目”表)的 innerHTML,它们不相邻并且具有不同的元素 ID。来自 java.js 的每个调用都可以单独正常工作(例如,如果一个被注释掉),但是当它们都运行时,无论第一个调用都会卡在“正在加载”消息上,而第二个调用会起作用。在 Web 浏览器中加载“content.php?item='5'&color='5'”会显示两个表。
我怀疑这与 $_GET[] 的机制有关(我不完全理解;这是我第一次使用 PHP)。但是调用应该顺序发生并且键('item'和'color')不会冲突,所以我不知道出了什么问题。
java.js:
function makeActive(active_tab) {
//item table
callAHAH('content.php?item='+active_tab, 'item', 'getting items for tab '+active_tab+'. Wait...', 'Error');
//color table
callAHAH('content.php?color='+active_tab, 'color', 'getting colors for tab '+active_tab+'. Wait...', 'Error');
}
内容.php:
if (isset($_GET['color'])) {
require 'color.php';
$index = 1*$_GET['color'];
$arr = $ITEM_TYPES[$index];
echoColorTable($arr); //makes table in color.php
} else {
echo "color not set "; //debug
}
if (isset($_GET['item'])) {
require 'item.php';
$index = 1*$_GET['item'];
echoItemTable($index); //makes table in item.php
} else {
echo "item not set "; //debug
}