2008-10-16 18 views
6

Estoy usando Spring Forms para mi aplicación web. Para las propiedades anidadas, la etiqueta del formulario genera los elementos de entrada que tienen id/name en forma de.La lógica del selector JQuery falla si id tiene '.' en el valor ¿Alguna solución?

Por ejemplo, la persona es la clase de comando y dirección está contenida dentro de su campo de dirección, entonces el elemento de ciudad sería,

<input type="text" id="address**.**city" name="address**.**city" /> 

ahora, el problema es cuando trato de obtener su valor usando jQuery,

$("#address.city").val(); 

jQuery no puede seleccionar ningún elemento apropiado!

Por favor déjeme saber cualquier solución.

Gracias de antemano.

+0

una solución, pero parece que varios fragmentos de texto no están en su pregunta. Tal vez valga la pena editarlos nuevamente, para que sea más fácil para las personas que quieren ayudar. – unwind

Respuesta

17

Prueba esto:

$("#address\\.city").val(); 

De the documentation:

Nota: si desea utilizar cualquiera de los meta-caracteres descritos anteriormente como parte literal de un nombre, debe escapar de la personaje con dos barras diagonales inversas (\). Por ejemplo:

#foo\\:bar 
#foo\\[bar\\] 
#foo\\.bar 
+0

'Los tokens ID y NAME deben comenzar con una letra ([A-Za-z]) y pueden ir seguidos de cualquier cantidad de letras, dígitos ([0-9]), guiones ("-"), guiones bajos ("_ "), dos puntos (": ") y puntos (". ") '- http://www.w3.org/TR/html401/types.html#type-name –

6
$('[id="address.city"]') 

también funcionará

No
Cuestiones relacionadas