我有一个像这样的ajax代码:
var req = new XMLHttpRequest();
req.open('GET', 'http://www.example.org/', false);
req.send(null);
if(req.status == 200)
var response = http_attendance.responseText;
document.getElementById('divAttendance').innerHTML = response;
当我在页面上得到结果时,FF浏览器会在'divAttendance'上显示DOM元素。如果我想对结果放置一些jquery效果,我就无法做到。
使用firebug可以清楚地看到DOM元素。但是,当我生成该页面的源代码时,'divAttendance'上没有repsonse文本。它像我这样空白:
<html>
....
..
<div id="divAttendance"></div>
..
..
</html>
如何操纵或对结果产生影响???
答案 0 :(得分:0)
好吧,如果您使用的是jQuery,那么您应该使用jquery ajax http://api.jquery.com/jQuery.ajax/
无论如何,如果您使用AJAX响应填充div,那么它将不会显示使用“View Source”,而是您将不得不使用像firebug这样的工具。
你的div最初应该如下所示
<div id="divAttendance" style="display:none"></div>
并且您的javascript应该包含以下内容
.....
document.getElementById('divAttendance').innerHTML = response;
$("#divAttendance").show("slow");
对于这样的操作,jQuery加载是简单而有用的功能,请看一下 http://api.jquery.com/load/
您的具体示例可以重写为
<html>
....
IMPORT JQUERY.JS
<script language="javascript">
$('#divAttendance').load('http://www.example.org/', function() {
$("#divAttendance").show("slow");
});
</script>
..
<div id="divAttendance" style="display:none"></div>
..
..
</html>