Я использую javascript (используя jquery), чтобы передать символ # в качестве параметра GET через вызов AJAX.
Проблема сейчас в том, что символ # разбивает мою строку запроса.
Любая помощь приветствуется. Спасибо!
Я использую javascript (используя jquery), чтобы передать символ # в качестве параметра GET через вызов AJAX.
Проблема сейчас в том, что символ # разбивает мою строку запроса.
Любая помощь приветствуется. Спасибо!
Вам нужно заменить его на %23
в строке. Однако вместо того, чтобы делать это напрямую, вы должны использовать функцию Javascript encodeURIComponent
для кодирования символов в URL-адресе.
В качестве альтернативы, если вы используете jQuery.ajax, вы можете автоматически кодировать параметры, передавая их через параметр data
.
Если вы передаете параметр данных в jQuery.ajax, jQuery выполняет кодирование за вас. Вы не должны пытаться создать URL самостоятельно.
$.ajax({ url : "http://myserver.com/mypage.aspx",
data : {'key1' : 'value#', 'key2' : 'value&&'}
...
});
Используйте encodeURIComponent().
Вам нужно будет закодировать URL-адрес, используя escape, функцию encodeURIComponent и т. д., чтобы передать этот символ. Это превратит персонажей в их двойников. Например, # будет %23