0

PrimeFaces2.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

なぜこのエラーが発生するのですか?私は何が間違っているのですか?

ありがとう

4

1 に答える 1

2

このp:fileUploadコンポーネントは、メッセージに示されているようにClientBehaviorHolderインターフェースを実装していないため、ajaxタグを含めることができるコンポーネントではありません(この投稿を参照)。

fileUploadコンポーネントに精通していませんが、PF3.2のドキュメントでに属性p:fileUploadがあることを確認しました。oncomplete

于 2012-04-13T06:59:28.017 に答える