1

我正在使用 com.extjs.gxt.ui.client.widget.form.FormPanel;用于文件上传。代码如下:

FormPanel panel = new FormPanel();
file = new FileUploadField();
file.setName("uploadedfile");
file.setFieldLabel("File");

FlexTable fileTable = new FlexTable();
fileTable.setWidget(0, 0, file);
panel.add(fileTable);

Button submitButton = new Button("Save");
panel.addButton(submitButton);


submitButton.addListener(Events.Select,
new Listener<ButtonEvent>() {
        @Override
        public void handleEvent(ButtonEvent be) {
        panel.setAction(<someactionUrl>);
        panel.submit(); 
}
});

表单提交文件上传开始后,我显示一个带有取消按钮的进度条。当用户单击取消按钮时,我想中止文件上传(表单提交请求)。我怎样才能做到这一点?

4

2 回答 2

0

为了能够取消表单提交,您必须导航或删除包含提交表单的页面。为了无缝地实现这一点,您必须更改提交方式。

提交时:

  1. 深度克隆正在上传的表单元素
  2. 将克隆的 input[type=file] 元素交换为原始元素。
  3. 创建一个 iframe
  4. 将 iframe 添加到 DOM
  5. 将克隆的表单附加到 iframe
  6. 将 iframe 的 id 和表单的目标设置为通用的唯一值
  7. 提交克隆的表格

取消:

  1. 删除 iframe。
于 2013-07-30T14:40:42.367 回答
-1

您可以查看gwt-upload。我已经看到基于 gwt-upload 的示例,您可以在其中取消文件的上传。

于 2012-05-29T15:43:09.490 回答