2008-10-16 8 views
6

Używam Spring Forms do mojej aplikacji internetowej. W przypadku właściwości zagnieżdżonych znacznik formularza generuje elementy wejściowe o identyfikatorze/nazwie w postaci.Logika selektora JQuery kończy się niepowodzeniem, jeśli id ​​ma "." w wartości. Jakieś rozwiązanie?

Na przykład, osoba jest klasa poleceń i adres zawarty jest w jego polu adresu, a następnie element miasto byłoby

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

teraz, problem jest gdy próbuję uzyskać jego wartość przy użyciu jQuery,

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

jQuery nie wybiera żadnego odpowiedniego elementu!

Proszę dać mi znać dowolnego rozwiązania.

Z góry dziękuję.

+0

nie jest rozwiązaniem, ale wydaje różne kawałki tekście brakuje Twojego pytania. Być może warto je edytować z powrotem, aby ułatwić ludziom, którzy chcą pomóc. – unwind

Odpowiedz

17

Spróbuj tego:

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

Od the documentation:

Uwaga: Jeśli chcesz użyć dowolnego z meta-znaków opisanych powyżej jako dosłownego część nazwy, trzeba uciec postać z dwoma ukośnikami odwrotnymi (\). Na przykład:

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

"Żeton identyfikatora i identyfikatora NAME musi zaczynać się od litery ([A-Za-z]), po której może następować dowolna liczba liter, cyfr ([0-9]), łączników (" - "), podkreślenie (" _ "), dwukropkami (": ") i kropkami (". ")" - http://www.w3.org/TR/html401/types.html#type-name –

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

będzie również działać