diff --git a/beta/src/content/reference/react-dom/components/input.md b/beta/src/content/reference/react-dom/components/input.md index 497713c07..e87e900b9 100644 --- a/beta/src/content/reference/react-dom/components/input.md +++ b/beta/src/content/reference/react-dom/components/input.md @@ -4,7 +4,7 @@ title: "" -The [built-in browser `` component](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input) lets you render different kinds of form inputs. +El [componente `` integrado en el navegador](https://developer.mozilla.org/es/docs/Web/HTML/Element/input) te permite renderizar diferentes tipos de entradas de formularios. ```js @@ -16,92 +16,92 @@ The [built-in browser `` component](https://developer.mozilla.org/en-US/d --- -## Reference {/*reference*/} +## Referencia {/*reference*/} ### `` {/*input*/} -To display an input, render the [built-in browser ``](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input) component. +Para mostrar un input, renderiza el componente [`` incorporado en el navegador](https://developer.mozilla.org/es/docs/Web/HTML/Element/input). ```js ``` -[See more examples below.](#usage) +[Mira más ejemplos abajo.](#usage) #### Props {/*props*/} -`` supports all [common element props.](/reference/react-dom/components/common#props) - -You can [make an input controlled](#controlling-an-input-with-a-state-variable) by passing one of these props: - -* [`checked`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#checked): A boolean. For a checkbox input or a radio button, controls whether it is selected. -* [`value`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#value): A string. For a text input, controls its text. (For a radio button, specifies its form data.) - -When you pass either of them, you must also pass an `onChange` handler that updates the passed value. - -These `` props are only relevant for uncontrolled inputs: - -* [`defaultChecked`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#defaultChecked): A boolean. Specifies [the initial value](#providing-an-initial-value-for-an-input) for `type="checkbox"` and `type="radio"` inputs. -* [`defaultValue`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#defaultValue): A string. Specifies [the initial value](#providing-an-initial-value-for-an-input) for a text input. - -These `` props are relevant both for uncontrolled and controlled inputs: - -* [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#accept): A string. Specifies which filetypes are accepted by a `type="file"` input. -* [`alt`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#alt): A string. Specifies the alternative image text for a `type="image"` input. -* [`capture`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#capture): A string. Specifies the media (microphone, video, or camera) captured by a `type="file"` input. -* [`autoComplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autocomplete): A string. Specifies one of the possible [autocomplete behaviors.](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values) -* [`autoFocus`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autofocus): A boolean. If `true`, React will focus the element on mount. -* [`dirname`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#dirname): A string. Specifies the form field name for the element's directionality. -* [`disabled`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#disabled): A boolean. If `true`, the input will not be interactive and will appear dimmed. -* `children`: `` does not accept children. -* [`form`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#form): A string. Specifies the `id` of the `
` this input belongs to. If omitted, it's the closest parent form. -* [`formAction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formaction): A string. Overrides the parent `` for `type="submit"` and `type="image"`. -* [`formEnctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formenctype): A string. Overrides the parent `` for `type="submit"` and `type="image"`. -* [`formMethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formmethod): A string. Overrides the parent `` for `type="submit"` and `type="image"`. -* [`formNoValidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formnovalidate): A string. Overrides the parent `` for `type="submit"` and `type="image"`. -* [`formTarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formtarget): A string. Overrides the parent `` for `type="submit"` and `type="image"`. -* [`height`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#height): A string. Specifies the image height for `type="image"`. -* [`list`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#list): A string. Specifies the `id` of the `` with the autocomplete options. -* [`max`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#max): A number. Specifies the maximum value of numerical and datetime inputs. -* [`maxLength`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#maxlength): A number. Specifies the maximum length of text and other inputs. -* [`min`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#min): A number. Specifies the minimum value of numerical and datetime inputs. -* [`minLength`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#minlength): A number. Specifies the minimum length of text and other inputs. -* [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#multiple): A boolean. Specifies whether multiple values are allowed for `` changes. React extends the `onSelect` event to also fire for empty selection and on edits (which may affect the selection). -* `onSelectCapture`: A version of `onSelect` that fires in the [capture phase.](/learn/responding-to-events#capture-phase-events) -* [`pattern`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#pattern): A string. Specifies the pattern that the `value` must match. -* [`placeholder`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#placeholder): A string. Displayed in a dimmed color when the input value is empty. -* [`readOnly`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#readonly): A boolean. If `true`, the input is not editable by the user. -* [`required`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#required): A boolean. If `true`, the value must be provided for the form to submit. -* [`size`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#size): A number. Similar to setting width, but the unit depends on the control. -* [`src`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#src): A string. Specifies the image source for a `type="image"` input. -* [`step`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#step): A positive number or an `'any'` string. Specifies the distance between valid values. -* [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#type): A string. One of the [input types.](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) -* [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#width): A string. Specifies the image width for a `type="image"` input. - -#### Caveats {/*caveats*/} - -- Checkboxes need `checked` (or `defaultChecked`), not `value` (or `defaultValue`). -- If a text input receives a string `value` prop, it will be [treated as controlled.](#controlling-an-input-with-a-state-variable) -- If a checkbox or a radio button receives a boolean `checked` prop, it will be [treated as controlled.](#controlling-an-input-with-a-state-variable) -- An input can't be both controlled and uncontrolled at the same time. -- An input cannot switch between being controlled or uncontrolled over its lifetime. -- Every controlled input needs an `onChange` event handler that synchronously updates its backing value. +`` admite todas las [props comunes de los elementos.](/reference/react-dom/components/common#props) + +Puedes [hacer un input controlado](#controlling-an-input-with-a-state-variable) pasando una de estas props: + +* [`checked`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#checked): Booleano. Para un entrada de tipo checkbox o radio button, controla si está seleccionado. +* [`value`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#value): String. Para una entrada de texto, controla su texto. (Para un radio button, especifica sus datos de formulario.) + +Cuando pases cualquiera de ellos, debes también pasar un manejador `onChange` que actualice el valor pasado. + +Estas props de `` son solamente relevantes para inputs no controlados: + +* [`defaultChecked`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#defaultChecked): Booleano. Especifica [el valor inicial](#providing-an-initial-value-for-an-input) para inputs `type="checkbox"` y `type="radio"`. +* [`defaultValue`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#defaultValue): String. Especifica [el valor inicial](#providing-an-initial-value-for-an-input) para un input de texto. + +Estas props de `` son relevantes para ambos inputs controlados y no controlados: + +* [`accept`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#accept): String. Especifica cuales tipos de archivo son soportados por un input `type="file"`. +* [`alt`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#alt): String. Especifica el texto alternativo de una imagen para un input `type="image"`. +* [`capture`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#capture): String. Especifica el medio capturado (micrófono, video, o cámara) por un input `type="file"`. +* [`autoComplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autocomplete): String. Especifica uno de los posibles [comportamientos de autocompletado.](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values) +* [`autoFocus`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autofocus): Booleano. Si es `true`, React enfocara al elemento al montarlo. +* [`dirname`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#dirname): String. Especifica el nombre del campo de formulario para la direccionalidad del elemento. +* [`disabled`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#disabled): Booleano. Si es `true`, el input no será interactivo y aparecerá oscurecido. +* `children`: `` no acepta hijos. +* [`form`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#form): String. Especifica el `id` del `` al que este input pertenece. Si se omite, es el formulario padre más cercano. +* [`formAction`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formaction): String. Sobrescribe el `` padre para `type="submit"` y `type="image"`. +* [`formEnctype`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formenctype): String. Sobrescribe el `` padre para `type="submit"` y `type="image"`. +* [`formMethod`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formmethod): String. Sobrescribe el `` padre para `type="submit"` y `type="image"`. +* [`formNoValidate`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formnovalidate): String. Sobrescribe el `` padre para `type="submit"` y `type="image"`. +* [`formTarget`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#formtarget): String. Sobrescribe `` padre para `type="submit"` y `type="image"`. +* [`height`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#height): String. Especifica la altura de la imagen para `type="image"`. +* [`list`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#list): String. Especifica el `id` del `` con las opciones de autocompletado. +* [`max`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#max): Número. Especifica el máximo valor de los inputs de tipo numérico y de fecha y hora. +* [`maxLength`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#maxlength): Número. Especifica la longitud máxima del texto y otros inputs. +* [`min`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#min): Número. Especifica el valor mínimo de los inputs de tipo numérico y de fecha y hora. +* [`minLength`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#minlength): Número. Especifica la longitud mínima de texto y otros inputs. +* [`multiple`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#multiple): Booleano. Especifica si valores múltiples son permitidos para ``. React hereda el evento `onSelect` para también activarse para selecciones vacías y en ediciones (las cuales pueden afectar la selección). +* `onSelectCapture`: Una versión `onSelect` que se activa en la [fase de captura.](/learn/responding-to-events#capture-phase-events) +* [`pattern`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#pattern): String. Especifica el patrón con el cual `value` debe coincidir. +* [`placeholder`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#placeholder): String. Mostrado en un color atenuado cuando el valor del input esta vació. +* [`readOnly`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#readonly): Booleano. Si es `true`, el usuario no puede editar el input. +* [`required`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#required): Booleano. Si es `true`, el valor debe ser proporcionado para poder enviar el formulario. +* [`size`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#size): Número. Similar a configurar el ancho, pero la unidad depende del control. +* [`src`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#src): String. Especifica la fuente de la imagen para un input `type="image"`. +* [`step`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#step): Un número positivo o un string `'any'`. Especifica la distancia entre los valores validos. +* [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#type): String. Uno de los [tipos de input.](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) +* [`width`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#width): String. Especifica el ancho de la imagen para un input `type="image"`. + +#### Advertencias {/*caveats*/} + +- Los Checkboxes necesitan `checked` (o `defaultChecked`), no `value` (o `defaultValue`). +- Si un input de texto recibe una prop `value` de tipo string , será [tratado como controlado.](#controlling-an-input-with-a-state-variable) +- Si un checkbox o un radio button recibe una prop `checked` de tipo booleano, será [tratado como controlado.](#controlling-an-input-with-a-state-variable) +- Un input no puede ser controlado o no controlado al mismo tiempo. +- Un input no puede cambiar entre ser controlado o no durante su ciclo de vida. +- Cada input controlado necesita un manejador de evento `onChange` que sincrónicamente actualice su valor de respaldo. --- -## Usage {/*usage*/} +## Uso {/*usage*/} -### Displaying inputs of different types {/*displaying-inputs-of-different-types*/} +### Visualización de inputs de diferentes tipos {/*displaying-inputs-of-different-types*/} -To display an input, render an `` component. By default, it will be a text input. You can pass `type="checkbox"` for a checkbox, `type="radio"` for a radio button, [or one of the other input types.](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) +Para visualizar un input, renderiza un componente ``. Por defecto, será un input de tipo texto. Puedes pasar `type="checkbox"` para un checkbox, `type="radio"` para un radio button, [o uno de los otros tipos de inputs.](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) @@ -110,7 +110,7 @@ export default function MyForm() { return ( <>

- Radio buttons: + Botones radio:

@@ -146,11 +146,11 @@ input { margin: 5px; } --- -### Providing a label for an input {/*providing-a-label-for-an-input*/} +### Proporcionar una etiqueta para un input {/*providing-a-label-for-an-input*/} -Typically, you will place every `` inside a [`