Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wicket fileUploadField.getFileUpload在AjaxBehavior上返回null_Wicket_Onchange - Fatal编程技术网

Wicket fileUploadField.getFileUpload在AjaxBehavior上返回null

Wicket fileUploadField.getFileUpload在AjaxBehavior上返回null,wicket,onchange,Wicket,Onchange,我正在尝试从wicket中“onChange”事件的FileUpload字段获取FileUpload。 但在选择文件后,它总是给出null。我的代码是这样的 fileUploadField.add(new AjaxEventBehavior("onChange") { @Override protected void onEvent(AjaxRequestTarget target) { FileUpload fileUpload = fileUploadFiel

我正在尝试从wicket中“onChange”事件的FileUpload字段获取FileUpload。 但在选择文件后,它总是给出null。我的代码是这样的

fileUploadField.add(new AjaxEventBehavior("onChange") {
    @Override
    protected void onEvent(AjaxRequestTarget target) {
        FileUpload fileUpload = fileUploadField.getFileUpload();
        if(fileUpload!=null) {
            //my code
        }
    }
}
我还尝试了AjaxFormComponentUpdateBehavior(“onChange”)


请帮帮我。

使用AJAX调用时,文件上传实际上是空的,因为文件上传是在以下步骤中处理的

  • 在表单字段中选择文件
  • 使用HTTP Post请求发布表单
  • 在服务器端接收HTTP POST请求
  • 将请求解析为文件上载的
  • 如果您只是在文件输入字段中添加一个onChange ajax事件,它只会对URL发出GET请求,但不会发送表单数据


    您可以尝试更改AjaxBehavior或AjaxButton,如

    My guess上的示例所示:数据尚未在模型中。在这里看一看这个问题:谢谢你的回答,我已经在使用ajax按钮了,只是在寻找其他选择。