将表单提交给iframe?

时间:2012-04-05 02:41:58

标签: jquery iframe file-upload submit

在下面的代码中,是否有人能够告诉我我做错了什么表单没有提交给iframe?

$(function() {
    $(".preview").click(function() {
        $('#sliderimage').wrap('<form action="/index/upload.php" method="post" id="imageform" target="imageupload" />');
        $('#imageform').submit();
        $('#sliderimage').unwrap();
        return false;
    });
});​


<iframe style="display: none;" name="imageupload" id="imageupload"></iframe>
<input type="file" id="sliderimage" name="sliderimage">
<input type="button" class="preview" value="Preview">

1 个答案:

答案 0 :(得分:0)

我立即看到两个问题,不确定他们是否会解决问题。

您已将“类型”设置为post。此属性应为method

您还需要在表单上设置enctype。

$(function() {
    $(".preview").click(function() {
        $('#sliderimage').wrap('<form action="/index/upload.php" method="post" id="imageform" target="imageupload" enctype="multipart/form-data" />');
        $('#imageform').submit();
        $('#sliderimage').unwrap();
        return false;
    });
});​

修改

上面的代码是从源代码直接剪切和粘贴....这意味着'隐藏'(â€<)字符jsfiddle粘贴到您的JavaScript中也是存在的。删除它,你js将起作用。这样做只需在js代码的末尾退格一次。