Jquery 为什么此表单没有在目标iframe中提交?
我已经创建了一个表单,它以iframe为目标提交图像。我以前完全可以这样做,但是现在整个页面都提交了,而不仅仅是iframe。我完全不知所措 HTML:Jquery 为什么此表单没有在目标iframe中提交?,jquery,forms,iframe,upload,Jquery,Forms,Iframe,Upload,我已经创建了一个表单,它以iframe为目标提交图像。我以前完全可以这样做,但是现在整个页面都提交了,而不仅仅是iframe。我完全不知所措 HTML: 图像输入 JS: $(“#fileinput”).on('change',function(){ 变量$iframe=$(“”).attr({ id:“帧上传器”, 名称:“帧上传器” }); 变量$img=$(“ 我在某个地方读到某些iframe名称被保留。更改iframe的名称已经解决了这个问题。也许您应该在创建时添加frame id和
图像输入
JS:
$(“#fileinput”).on('change',function(){
变量$iframe=$(“”).attr({
id:“帧上传器”,
名称:“帧上传器”
});
变量$img=$(“
我在某个地方读到某些iframe名称被保留。更改iframe的名称已经解决了这个问题。也许您应该在创建时添加frame id和name属性。如下所示:
var $iframe = $("<iframe id=\"frame_uploader\" name=\"frame_uploader\" />");
var$iframe=$(“”);
这绝对必须支持旧版本的IE,因此请不要提供HTML文件API建议。嗯……您是否尝试过将iframe放置在表单内部以外的其他位置?不确定它是否有影响。@KevinB是的,我尝试过将其移到表单外部。没有帮助。不过,谢谢。您的JSFIDLE示例似乎确实有效……是的,我应该可以我已经解释过了,它在JSFIDLE中似乎工作得很好,但在浏览器中,整个页面都会提交。谢谢!谢谢!这真是一个调试的难题,我的iframe也出现了同样的问题,称为“后台文件上传”,将其改为“我的iframe”,瞧!成功了。
$("#fileinput").on('change', function () {
var $iframe = $("<iframe />").attr({
id: 'frame_uploader',
name: 'frame_uploader'
});
var $img = $("<img />");
var imageUrl = "";
$("#upload-form").prepend($img).append($iframe)
.attr('target', 'frame_uploader')
.trigger('submit');
$iframe.load(function () {
var imageUrl = $iframe.contents().find("body").text();
$img.attr('src', imageUrl);
});
});
var $iframe = $("<iframe id=\"frame_uploader\" name=\"frame_uploader\" />");