我对AJAX动作的行为感到困惑。我一直认为我们只能请求网页的一部分,作为回应,只需要获得特别的部分。但我认为这是不对的(或者我错了!)。
假设我们将此页面命名为 test.php :
<html>
<head>
<title>test</title>
</head>
<body>
<div>
<span id="el">
<?php echo "test"; ?>
</span>
</div>
</body>
</html>
我正在使用名为 ajax.php 的网页从 test.php 中检索数据:
<html>
<head>
<title>AJAX</title>
<script src="jquery.js"></script>
<script>
$(document).ready(function() {
$.ajax({
"type": "POST",
"url": "test.php",
"success": function(data) {
$("#container").html($(data).filter("div").html());
}
});
});
</script>
</head>
<body>
<div id="container"></div>
</body>
</html>
我知道在回复整个test.php页面将被收回然后我可以在ajax.php页面上过滤我想要的内容。
有没有办法只检索页面的一部分作为回复而不是整页内容?
我已经使用加载方法,但即使使用加载方法并仅指定我想要检索的元素,也会在响应中检索整个页面,然后过滤我想要的内容:
<html>
<head>
<title>load</title>
<script src="jquery.js"></script>
<script>
$(document).ready(function() {
$("#container").load("test.php #el");
});
</script>
</head>
<body>
<div id="container"></div>
</body>
</html>
那么如何检索网页的一部分“响应周期”而不是整页?
谢谢。