2
Все еще немного запутано после просмотра документации stackOverflow и jQuery. Должен ли я избегать value
, если я получу его из поля ввода и измените ссылку с помощью интерполяции строк?jQuery .val метод требуется экранирование?
function updateLinks() {
var value = $('.dataTables_filter input').val()
$('.some-link').attr("href", "www.example.com/?query=" + value)
}
Да. Да, вы бы это сделали. «Браузер» будет кодировать HTML-код для вас, но не URL-кодировать его. –
@frederichamidi Но отправка искаженного запроса, подобного этому, заставит браузер преобразовать URL-адрес при отправке ... Я знаю, что это не так, это просто браузер, исправляющий ошибки пользователя. – somethinghere
@somethinghere, боюсь, я не понимаю ваш комментарий. Если, например, значение ввода содержит '&', то оно будет экранировано в '&', а не '% 26'. Поэтому он будет интерпретироваться как разделитель аргументов запроса в результирующем URL-адресе, а не как часть самого аргумента запроса. –