Как настроить таргетинг элементов ввода по имени свойства, которое имеет специальные символы, используя jquery - PullRequest
3 голосов
/ 24 марта 2020

У меня есть поле ввода, которое создается после зацикливания структуры данных и создания html на go. Это выглядит так:

<input data-role="tagsinput" type="text" name="sales.sales_channel,no_tx" class="form-control" style="font-size:20px;">

Теперь я хочу нацелить элемент по имени. Вот что я делаю

$(`[name=${obj.table}.${key},${value.islow}]`)

Это создает идентификатор, как показано ниже

[name=sales.sales_channel,no_tx]

Но я получаю эту ошибку

Error: Syntax error, unrecognized expression: [name=sales.sales_channel,no_tx]

Итак, я понял, что jquery не понимает специальных символов, и эти специальные символы должны быть экранированы, как предлагается здесь { ссылка }

Так что я сделал что-то вроде этого

$(`[name=${obj.table}\\.${key}\\,${value.islow}]`)

Но это тоже не работает. Итак, как мне настроить таргетинг на элемент по имени, содержащий специальные символы?

1 Ответ

2 голосов
/ 24 марта 2020

Чтобы избежать появления специальных символов в name, заключите значение в двойные кавычки:

$(`[name="${obj.table}.${key},${value.islow}"]`)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...