我有2個PHP頁面,Page1包含(html + javascript + php代碼),page2僅包含php代碼。在AJAX響應中返回多個複選框
所以,第1頁裏面,療法是一個下拉列表包含許多值,如果讓我選擇其中之一,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>
Ajax代碼:
<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>
使page2.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>
使用jQuery而不是.. – 2013-02-15 14:27:22
這看起來像它應該工作。什麼是問題?什麼部分不起作用? – Husman 2013-02-15 14:34:09
我看不到第1頁的複選框 – louk 2013-02-15 14:41:04