我有 2 个 php 页面,第 1 页包含(html + javascript + php 代码),第 2 页仅包含 php 代码。
因此,在 page1 内,有一个下拉列表包含许多值,如果我选择其中一个,AJAX 代码将值传递给 page2.php,如下所示:
如果我用下拉替换复选框输入,脚本可以完美运行,但在这种情况下,它不起作用。
目的是将 page2 的结果显示为 page1 上的复选框。任何想法?
Page1.php:
HTML 代码:
<select onChange="getdids(this.value)" id="groupSelect" name="groupSelect" >
<option value="0">xxx</option>
<option value="1">yyy</option>
<option value="2">zzz</option>
<option value="3">vvv</option>
</select>
<input type="checkbox" id="alldids" name="alldids" value="0">did<br>
阿贾克斯代码:
<script>
function getdids(str)
{
if (str=="")
{
document.getElementById("alldids").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("alldids").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","page1.php?groupName="+str,true);
xmlhttp.send();
}
</script>
页面2.php:
PHP代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Get dids</title>
</head>
<?php
require_once('../functions.php');
include('../variables.php');
$didGrpName=$_GET['groupName'];
$didGrpId=GroupId($table_groups,$didGrpName);
$x=array();
$x=showDidOfGroup($didGrpId);
$i=1;
while($i <= $x[$i]){ ?>
<input type="checkbox" value="<?php echo $x[$i]; ?>"><?php echo $x[$i]; ?><br>
<?php $i++; } ?>
<body>
</body>
</html>