Извините, что я не использую ту же учетную запись, но чтобы ответить на все, здесь идет:
Мистер.Планкетт, экранирование персонажей фактически не работает в этом случае, по любой причине (вероятно, из-за их зарезервированного статуса персонажа).Я забыл упомянуть, что пытался убежать от них xD.
Мистер.Надеюсь, спасибо за обходное решение.Я проверю это и посмотрю, работает ли (это должно)это нужно заменить (да, я знаю, это может быть просто if / else if / else if, но это все еще довольно много кода).Насколько это возможно? Что касается ответа Уильяма, если вы проведете небольшое исследование, вы заметите, что encodeURIComponent () этого не делает.фактически кодирует множество символов, которые закодированы в PHP urlencode ().Цель всего этого вопроса состояла в том, чтобы создать в JS простую копию urlencode ().
Так что спасибо всем за ответы, это очень ценится.* Код мистера Хоупа работает с одним твиком:
function urlencode(str) {
var symbols = {
'@': '%40',
'%26amp%3B: '%26',
'*': '%2A',
'+': '%2B',
'/': '%2F',
'%26lt%3B': '%3C',
'%26gt%3B': '%3E'
};
return escape(str).replace(/([@*+/]|%26(amp|lt|gt)%3B)/g, function (m) { return symbols[m]; });
}
Очевидно, что кто-то другой может изменить код другим способом, чтобы заставить его работать, но для меня исключение перекрестных помех от выхода из процентных признаковзамена гораздо удобнее.
Спасибо всем еще раз.