He estado trabajando en el sitio web durante mucho tiempo, pero no he descubierto la diferencia entre el nombre y la ID en la entrada. Recientemente, aprendí jQuery y volví a encontrar este problema, así que recopilé información en línea. Después de ver este artículo, organícelo para su uso posterior.
Se puede decir que casi todos los que han hecho el desarrollo web han preguntado, ¿cuál es la diferencia entre el elemento ID y el nombre? ¿Por qué necesitamos nombre con ID? Y también podemos obtener la respuesta más clásica: la identificación es como el número de identificación de una persona, y el nombre es como su nombre. La identificación es obviamente única, y el nombre se puede repetir.
La semana pasada también encontré el problema de ID y nombre. Ingresé un tipo de entrada = oculto en la página y escribí solo un id = 'sliceInfo'. Después de la asignación, utilicé request.params [sliceInfo] en segundo plano pero no pude obtener el valor. Más tarde, de repente me di cuenta de que debería usar el nombre para indicarlo, así que agregué nombre = 'sliceInfo' a la entrada, y todo estaba bien.
Las respuestas a la identificación y el nombre en el primer párrafo son demasiado generales. Por supuesto, esa explicación es completamente correcta para la identificación. Es la identidad del elemento HTML en el cliente. El nombre es mucho más complicado porque el nombre tiene muchos usos, por lo que no puede ser reemplazado por ID, cancelándolo. Los usos específicos son:
Propósito 1: Como etiqueta del lado del servidor para elementos HTML que pueden interactuar con el servidor, como entrada, selección, textura y botón. Podemos obtener el valor enviado por el elemento a través de solicitud.Params en el lado del servidor de acuerdo con su nombre.
Propósito 2: Se agrupan el tipo de entrada de elementos HTML = 'Radio'. Sabemos que el control del botón de radio está en la misma clase de agrupación. La operación de verificación es mutex. Solo se puede seleccionar una radio al mismo tiempo. Esta agrupación se implementa en función del mismo atributo de nombre.
Propósito 3: Crear un ancla en la página. Sabemos que <a href = url> enlace </a> es obtener un hipervínculo de página. Si no usamos el atributo HREF, usamos el nombre, como: <a name = PageBottom> </a>, obtenemos un ancla de página.
Propósito 4: La identidad como objeto, como el applet, el objeto, la incrustación y otros elementos. Por ejemplo, en una instancia de objeto de applet, usaremos su nombre para hacer referencia al objeto.
Propósito 5: Al asociar entre un elemento IMG y un elemento de mapa, si desea definir el área de punto de acceso del IMG, debe usar su Atributo useMap para hacer useMap =#nombre (nombre del elemento de mapa asociado).
Propósito 6: Atributos de ciertos elementos específicos, como Attribute, Meta y Param. Por ejemplo, defina el parámetro <param name = appletParameter valor = valor> para objeto o <meta name = autor content = dave raggett> en meta.
Obviamente, estos usos no pueden ser simplemente reemplazados por IDS, por lo que la ID de los elementos y el nombre HTML no son la diferencia entre los números de identificación y los nombres. También son cosas diferentes.
Por supuesto, el atributo de nombre del elemento HTML también puede desempeñar un pequeño papel de identificación en la página, porque en el árbol de objetos DHTML, podemos usar document.getElementsByName para obtener una matriz de objetos que contienen todos los elementos de nombre especificados en la página. Hay otro problema con el atributo de nombre. Cuando creamos dinámicamente elementos que pueden contener atributos de nombre, no podemos simplemente usar el elemento de asignación.name = ... para agregar su nombre. En su lugar, debemos usar document.createElement ('<elemento name = myname> </ememem>') para agregar el atributo de nombre al elemento al crear elemento. ¿Qué quiere decir esto? Solo mira el ejemplo a continuación para entender.
Copiar el código