我做了一个简单的例子来说明这个问题:下面的表单使用 jQuery 提交到另一个页面.post()
。
形式
$('form').submit(function(){
$.post(
$(this).attr('action'),
$(this).serialize(),
function(data) {
var ret = data;
var final_data = $(ret).find('#holder-1').html();
alert(final_data);
}
)
return false;
})
行动
<div id="holder-1">
<h1>Content 1</h1>
</div>
<div id="holder-2">
<h1>Content 2</h1>
</div>
<div id="holder-3">
<h1>Content 3</h1>
</div>
日志显示内容data
看起来不错。但是一旦我尝试查找#holder-1
with .find()
,它就会返回undefined。
这与jQuery api页面中的最后一个示例几乎相同:http: //api.jquery.com/jQuery.post/
这是托管在我的网站上的完整(非)工作示例,其中包含一些console.log()
代码:
表格: http ://www.peixelaranja.com.br/tmp/post.php
我几乎尝试了任何方法:将 dataType 作为第四个参数传递,使用$.ajax()
而不是.post()
,使用.filter()
而不是.find()
,不同版本的 jQuery ......似乎没有任何效果。
所有文件都是UTF-8。
有任何想法吗?