Skip to main content

FileChooser

FileChooser objects are dispatched by the page in the page.on('filechooser') event.

// Start waiting for file chooser before clicking. Note no await.
const fileChooserPromise = page.waitForEvent('filechooser');
await page.getByText('Upload file').click();
const fileChooser = await fileChooserPromise;
await fileChooser.setFiles(path.join(__dirname, 'myfile.pdf'));

Methods

element

Added in: v1.8 fileChooser.element

Returns input element associated with this file chooser.

Usage

fileChooser.element();

Returns


isMultiple

Added in: v1.8 fileChooser.isMultiple

Returns whether this file chooser accepts multiple files.

Usage

fileChooser.isMultiple();

Returns


page

Added in: v1.8 fileChooser.page

Returns page this file chooser belongs to.

Usage

fileChooser.page();

Returns


setFiles

Added in: v1.8 fileChooser.setFiles

Sets the value of the file input this chooser is associated with. If some of the filePaths are relative paths, then they are resolved relative to the current working directory. For empty array, clears the selected files.

Usage

await fileChooser.setFiles(files);
await fileChooser.setFiles(files, options);

Arguments

  • files string|Array<string>|Object|Array<Object>#
  • options Object (optional)
    • noWaitAfter boolean (optional)#

      Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as navigating to inaccessible pages. Defaults to false.

    • timeout number (optional)#

      Maximum time in milliseconds. Defaults to 0 - no timeout. The default value can be changed via actionTimeout option in the config, or by using the browserContext.setDefaultTimeout() or page.setDefaultTimeout() methods.

Returns