我想编写一个 jquery 插件,它可以使用 iframe 提交表单并将 iframe 的内容作为回调函数的参数返回。但是 onload 事件不返回任何值。我是初学者。你能帮我吗?
问问题
443 次
1 回答
0
推荐
我能想象的唯一需要在 iFrame 中提交表单的情况是,如果你想进行 AJAX 上传,如果这是你的情况,你可以看看这个插件,它非常优雅地实现了这一点(他们使用 iFrame提交文件上传)
但是,如果您只是想提交表单并在同一页面上检索结果数据,最好不要使用 iframe 并坚持使用$.post()
例子:
$.post('ajax/test.html', form.serializeArray(), function(data) { // Callback function
$('.result').html(data); // Do what you want with data
}, 'html'); // Retrieve HTML, json etc
如果你还需要它
如果您仍然需要使用 iframe,以下是 upload.js 插件中的相关代码:
form.submit(function() { // form would be the form element in the iframe
iframe.load(function() {
var data = handleData(this);
// data will be the resulting content
});
}).submit(); // submit form after applying listeners
并改变它们的handleData()
功能:
function handleData(iframe) {
return $(iframe).contents().get(0);
}
于 2012-11-04T08:57:20.143 回答