0

我想提交通过对话框完成的表格,表格如下,

<div id="changeProfileDialogSND" style="display:none;width: auto; min-height: 0px; height: 50px;" scrolltop="0" scrollleft="0">

<form id="uploadImageAttrForm"  
        action="/local/..."     
        enctype="multipart/form-data" method="post" style="padding-left: 10px">
        <h4>Upload your profile image:</h4><br/>
        <br/>           
        <input id="imageUploadAttr"
        size="40" name="image" type="file" />
        <br/> 
        <input type="submit" name="add" value="add" />

        <br/><br/>      
    </form>    </div>
<div id="changeProfileImage" style="width: 150px; height: 150px; background-color: rgb(0, 0, 0);">ChangeImage</div>

我有以下功能在对话框中显示此表单,

$( "#changeProfileImage" ).click(function() {
    $( "#changeProfileDialogSND" ).dialog( "open" );
        return false;
});

$( "#changeProfileDialogSND" ).dialog({
    autoOpen: false,
    height: 240,
    width: 440,
    resizable: false,
    modal: true
});

现在的问题是这个表单在对话框中显示并通过操作提交,这个表单基本上是将图像上传到我的服务器,但我无法在相同或不同的对话框中显示结果,它转到那个 url(action )并提交文件并显示纯白色背景和消息“文件上传成功”,我希望它留在同一对话框或同一页面上并显示带有此消息的另一个对话框,任何早期帮助请...

4

1 回答 1

0

如果您使用的是支持 postMessage (IE8+) 的现代浏览器,则在用户上传文件后,服​​务器可以返回一个带有 JavaScript 代码的页面,该页面使用 postMessage 与其父级通信并关闭对话框。

如果您想在同一页面上托管上传控件,<iframe> 可能会有所帮助。

您可以在http://html5demos.com/postmessage找到 postMessage 演示。

于 2013-07-18T05:37:37.397 回答