Страницы

Поиск по вопросам

вторник, 26 февраля 2019 г.

jquery обращение к элементу [дубликат]

На данный вопрос уже ответили: Не работает append() 1 ответ Jquery как обратиться к элементу с id="xfield[price]" Делаю вот так ничего не происходит
$(function() { alert($("#xfield[price]").val()); });


Ответ

Попробуйте вот так:
$(function() { alert($("#xfield\\[price\\]").val()); });
UPDATE
Я в таких случаях использую функцию для escaping.
function escapeSelector(selector) { if (!selector) return false; var specials = [ '#', '&', '~', '=', '>', "'", ':', '"', '!', ';', ',' ]; var regexSpecials = [ '.', '*', '+', '|', '[', ']', '(', ')', '/', '^', '$' ]; var sRE = new RegExp( '(' + specials.join('|') + '|\\' + regexSpecials.join('|\\') + ')', 'g' );
return selector.replace(sRE, '\\$1'); }
В Вашем варианте это должно работать вот так:
$(function() { alert($("#" + escapeSelector("xfield[price]")).val()); });
Попробуйте. Сработает - дарю ;)
UPDATE 2
@Igor также предоставил код, работающий на чистом javascript
alert(document.getElementById("xfield\[price\]").value);

Комментариев нет:

Отправить комментарий