如何在IE中使用AJAX
How to use AJAX in IE
我使用的是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>
这是我的ajax 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代码中的表头是唯一被响应的。
我也试着在没有查询的情况下进行,并将循环更改为for($I=0;$I<5;$I++),并将要显示的qvalues更改为"1",但它仍然无法进入厕所[并显示它。
问题出在哪里?:(
从这里开始:https://developer.mozilla.org/en/AJAX/Getting_Started,Mozilla解释了跨浏览器执行此操作的正确方法。稍后,在学习了
下载并为您的网站使用jQuery:http://docs.jquery.com/Downloading_jQuery#Download_jQuery
然后你的代码会是这样的:
$('.mydropdown').change(function(){
//get values for month, year
$.ajax({
url: "ajax/filterMandays.php?m="+month+"&y="+year,
type: "GET",
success: function(data){
//data is returned back
$('#mandayTable').html(data);
}
});
});
相关文章:
- Jquery Modal表单登录与AJAX-ASP经典上的IE 9
- IE出现奇怪的ajax问题
- IE上的新XMLHttpRequest()出现JS Ajax未指定错误
- 对于Ajax调用,为什么innerHTML没有显示在IE中
- 当在coldfusion中通过AJAX传递时,FORM提交在IE浏览器中给出空表单
- jQuery AJAX 上传系统 IE 问题
- IE 9、10、11-Ajax调用未返回
- $.get-Ajax中的alert()在IE中不工作
- jQuery日期选择器在Firefox和IE的MVC部分视图上进行ajax更新后无法工作
- IE 11出现奇怪的AJAX错误
- Ajax加载程序gif在ie和chrome中不起作用
- 当尝试仅在 IE 上使用 ajax 请求读取本地 xml 文件时,访问将被拒绝
- IE 焦点事件在 ajax 加载后随机失败
- IE 无法将响应标头(来自 ajax)打印为 utf8
- IE 的行为与 jQuery change/ajax 事件不一致
- 在 Jquery Ajax IE 之后访问 getElementsByName 数组
- 连续的 ajax 调用会冻结 chrome 和 IE
- jQuery AJAX 调用在 Firefox 中有效,但在 IE 中不起作用 - 返回有效响应
- jQuery AJAX IE - skipped functions ajax
- Ajax:IE上的空白