我正在使用PrimeFaces 2.2。我正在使用p:fileuplaod,当fileUploads然后使用更新我更改我的页面上的图像。在这里。
<p:fileUpload id="countryFlag" widgetVar="uploader" description="Image"
update="Flag" allowTypes="*.jpg;*.png;*.gif;*.jpeg;" auto="true"
fileUploadListener="#{countryPages_Detail.imageUpload}">
<p:ajax oncomplete="test('Flag')" />
</p:fileUpload>
<p:graphicImage id="Flag" value="#{countryPages_Detail.imagePath}"
width="80" height="50" cache="false">
<f:event type="preRenderComponent" listener="#{countryPages_Detail.putImage}" />
</p:graphicImage>
我想用脚本做的是当上传完成后,当图像被更改时使用ajax,那么我想检查图像src属性。这是我的test()函数,它不完整,但这里是
function test(imageId) {
var imgId = imageId;
var image = $("#saarcImagesTable tr").find("img[id='imageId']")
alert("Image change");
}
但我收到错误
父级不是ClientBehaviorHolder的实例:org.primefaces.component.fileupload.FileUpload@e39f71
为什么我收到此错误?我做错了什么?
由于
答案 0 :(得分:2)
p:fileUpload
组件未按消息状态实现ClientBehaviorHolder接口,因此不包含可包含ajax标记的组件(请参阅this post)。
我不熟悉fileUpload组件,但我在PF 3.2的文档中看到p:fileUpload
具有oncomplete
属性。