file-uploadjsf-2primefaceslabel

Change default button label of <p:fileUpload mode="simple">


I am using <p:fileUpload mode="simple">. The button label shows differently in Chrome and Firefox. I would like it to be the same across browsers. I tried changing it by setting the label attribute as follows:

<p:fileUpload label="Browse" ... mode="simple" />

However, it had no effect. How can I achieve this?


Solution

  • That's not possible in current PrimeFaces 3.x version. It's only possible when you use mode="advanced" instead of mode="simple".

    As to your attempt to use the label attribute, this attribute is only used as label in validation error messages associated with the input component. With your label="Browse" attempt, in case of a required="true" validation error, the message would appear like so "Browse is required" instead of "formId:inputId is required".


    Update: since PrimeFaces 5.x, you can add skinSimple="true" to give mode="simple" the desired skin/look'n'feel as the remainder. Also, the label will actually be used as button label. See also the showcase.

    <p:fileUpload label="Browse" ... mode="simple" skinSimple="true" />