thirtyfour

Struct Form

Source
pub struct Form { /* private fields */ }
Expand description

An HTML form on the current page.

Implementations§

Source§

impl Form

Source

pub fn client(self) -> Client

Get back the Client hosting this Form.

Source§

impl Form

Source

pub async fn set( &self, locator: Locator<'_>, value: &str, ) -> Result<Form, CmdError>

Find a form input using the given locator and set its value to value.

Source

pub async fn set_by_name( &self, field: &str, value: &str, ) -> Result<Form, CmdError>

Find a form input with the given name and set its value to value.

Source§

impl Form

Source

pub async fn submit(&self) -> Result<(), CmdError>

Submit this form using the first available submit button.

false is returned if no submit button was not found.

Source

pub async fn submit_with(&self, button: Locator<'_>) -> Result<(), CmdError>

Submit this form using the button matched by the given selector.

false is returned if a matching button was not found.

Source

pub async fn submit_using(&self, button_label: &str) -> Result<(), CmdError>

Submit this form using the form submit button with the given label (case-insensitive).

false is returned if a matching button was not found.

Source

pub async fn submit_direct(&self) -> Result<(), CmdError>

Submit this form directly, without clicking any buttons.

This can be useful to bypass forms that perform various magic when the submit button is clicked, or that hijack click events altogether (yes, I’m looking at you online advertisement code).

Note that since no button is actually clicked, the name=value pair for the submit button will not be submitted. This can be circumvented by using submit_sneaky instead.

Source

pub async fn submit_sneaky( &self, field: &str, value: &str, ) -> Result<(), CmdError>

Submit this form directly, without clicking any buttons, and with an extra field.

Like submit_direct, this method will submit this form without clicking a submit button. However, it will also inject a hidden input element on the page that carries the given field=value mapping. This allows you to emulate the form data as it would have been if the submit button was indeed clicked.

Trait Implementations§

Source§

impl Clone for Form

Source§

fn clone(&self) -> Form

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Form

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Form

§

impl !RefUnwindSafe for Form

§

impl Send for Form

§

impl Sync for Form

§

impl Unpin for Form

§

impl !UnwindSafe for Form

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more