0

谁能告诉我我在以下代码中做错了什么,表单没有提交到 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">
4

1 回答 1

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;
    });
});​

编辑

上面的代码是从您的源代码直接剪切和粘贴的......这意味着 'hidden'(​) 字符 jsfiddle 粘贴到您的 javascript 中也在那里。删除它,你的 js 将起作用。要做到这一点,只需在你的 js 代码末尾退格一次。

于 2012-04-05T03:03:29.710 回答