IE를 사용하고 있는데 드롭 다운이 변경되면 데이터베이스에서 값이있는 테이블을 표시하는 간단한 AJAX를 수행해야합니다. 여기IE에서 AJAX를 사용하는 방법
<script type="text/javascript">
function getXML()
{
var req;
try {
req = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
req = null;
}
}
}
if (!req){
return null;
} else {
return req;
}
}
function filter(month, year)
{
if(getXML()){
var xmlhttp = getXML();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("mandayTable").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax/filterMandays.php?m="+month+"&y="+year,true);
xmlhttp.send();
} else {
alert("Error initializing XMLHttpRequest!");
}
}
</script>
내 아약스 PHP
<?php
$q = "SELECT md.mandays_id,md.employeenum,md.month,md.year,md.required_man_days,d.firstname,d.lastname
FROM tbl_mandays md,tbl_employee_details d
WHERE md.active = '1'
AND md.employeenum = d.employeenum
AND md.month = '10';"; //employee_details WHERE approver = 0"
$res = $db->Execute($q);
echo "<table border = 1>";
echo "<tr><th>Employee Number</th><th>First Name</th><th>Last Name</th><th>Month-Year</th><th>Required Man Days</th><th>Edit/Delete</th></tr>";
/while($rows = $res->FetchRow())
for($i=0;$i<5;$i++)
{
$mandays_id = $rows[0];
$empnum = $rows[1];
$month_year = $rows[2] ."-" .$rows[3];
$required_man_days = $rows[4];
$firstname = $rows[5];
$lastname = $rows[6];
echo "<tr><td>".$empnum . "</td><td>".$firstname ."</td><td>".$lastname ."</td><td>" . $month_year ."</td><td>" .$required_man_days . "</td><td width = \"200\" align = \"center\"><a href = 'edit_mandays.php?mandays_id=$mandays_id');'>Edit/Delete</a></td></tr>";
}
echo "</table>";
?>
문제가 첫 번째 "onchange를은"그것은 아무것도하지 않습니다에 있다는 것입니다 수 있습니다 :
여기 내 스크립트입니다. 두 번째 "ONCHANGE"에서 PHP 코드의 테이블 헤더가 에코됩니다.
또한 질문없이 루프를 변경하고 ($ i = 0; $ i < 5; $ i ++) 루프를 변경하여 qvalues를 "1"로 표시되도록 변경했지만 여전히주의해야합니다. 그 loo [그리고 그것을 표시합니다.
무엇이 문제인가 보입니까? :(
"문제가있는 것 같지 않습니다."문제가있는 것 같습니까? 무슨 문제인가. 실제 문제에 대한 설명이 없습니다. – epascarello
@epascarello, 문제는 첫 번째 "ONCHANGE"에서 아무 것도하지 않는다는 것입니다. 두 번째 "ONCHANGE"에서 PHP 코드의 테이블 헤더가 에코됩니다. 또한 쿼리없이 루프를 ($ i = 0; $ i <5; $ i ++)로 변경하고 qvalues를 "1"로 표시되도록 변경했지만 여전히주의해야합니다. [그것을 표시하십시오. – prukuhkoo
당신은 jquery를 조사해야합니다. 브라우저를 통해 일관성있게 만들고 꽤 간단합니다 ... – bryanmac