2016-07-12 2 views
1

Я использую следующий селектор JQuery по идентификаторуКак определить идентификатор jquery selector valid id?

$("#rs_0.01").val(); 

Так что мой маленький вопрос: это действует или нет? Поскольку это не работает в моем случае.

+0

'ID и NAME лексемы должны начинаться с буквы ([ A-Za-z]), за которым может следовать любое количество букв, цифр ([0-9]), дефис («-»), подчеркивание («_»), двоеточия («:») и периоды ("."). 'согласно [this] (http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html) – guradio

+0

' $ ("[ id = 'rs_0.01'] "). val();' или '$ (" # rs_0 \\. 01 "). val();' –

+1

$ ("[id = 'rs_0.01']"). Val(); это хорошо для меня. @PranavCBalan Пожалуйста, разместите его как ответ. Другие решения могут работать. Но я использую цикл для отображения купюр, мой цикл содержит 1,2,5,10 и т. Д. Поэтому упомянутое решение работает для меня. –

ответ

2

Проверить documentation of jQuery Selectors

Чтобы использовать любой из мета-символов (например, "#% & $«() * +,/:; < => @ []^`{!.? | } ~) как литеральную часть имени, он должен быть экранирован с помощью двух обратных косых черт: \. Например, элемент с id = "foo.bar" может использовать селектор $ ("# foo \ .bar") Спецификация W3C CSS содержит полный набор правил, касающихся правильных селекторов CSS. Также полезной является запись в блоге Матиаса Биненса о символьных escape-последовательностях символов для идентификаторов.


Таким образом, вы можете использовать

$("#rs_0\\.01").val(); 

или использовать attribute equals selector вместо

$("[id='rs_0.01']").val(); 
0

Использование: Вам нужно бежать специальные символы:

$("#rs_0\\.01").val(); 
0

В вашем случае у вас есть несколько способов получить значение текстового поля с помощью селектора id с тем же именем, которое вы указали в вопросе ..

Один из способов это делать так:

$("[id='rs_0.01']").val(); 

или вы можете использовать управляющую последовательность между ними имя селектора, как это:

$("#rs_0\\.01").val(); 
Смежные вопросы