Очистить селектор jQuery

Безопасно ли использовать пользовательский ввод в селекторе элементов jQuery следующим образом:

$(".only-show-for-mode-" + mode).removeClass("hidden") 

Если mode пришло из пользовательского ввода или http-запроса?


person Addi    schedule 19.03.2019    source источник
comment
Я думаю, что худшее, что он может сделать, это выдать ошибку, когда ни один элемент не соответствует...   -  person Louys Patrice Bessette    schedule 20.03.2019
comment
Что вы могли бы смягчить с помощью try { $(".only-show-for-mode-" + mode).length } catch { alert("nope, not gonna work"); } (что отличается от того, чтобы ничего не найти)   -  person freedomn-m    schedule 20.03.2019
comment
Вы также можете сделать его более конкретным, например, $(".container .only-show-for-mode-" + mode).show();   -  person freedomn-m    schedule 20.03.2019
comment
При необходимости вы можете рассмотреть возможность проверки существования значения в предопределенном списке.   -  person showdev    schedule 20.03.2019
comment
Возможный дубликат Можно ли внедрить вредоносный код javascript через $()?   -  person showdev    schedule 20.03.2019