ASP.NET Амперсанд URLEncode для использования в Строке запроса

Проблема возникла, когда я пытался разместить код ползунка

$('#js-grid-slider-thumbnail').cubeportfolio({some-properties: somthings});

между кодом ниже.

$(document).ready()

И когда я оставил код слайдера за пределами этого, одна проблема была решена, так как больше не было тега img с нулевым размером. Но все же изображение не было загружено, пока я не использовал функцию ниже.

setTimeOut(function(){})

Итак, мой окончательный код стал примерно таким:

setTimeout(function () {
            $('#js-grid-slider-thumbnail').cubeportfolio({
                layoutMode: 'slider',
                drag: true,
                auto: false,
                //And some another properties
            });
    }, 600);

И мне больше не нужно было использовать приведенный ниже код для загрузки изображений.

$(window).resize();
20
задан Cœur 31 December 2016 в 04:19
поделиться

2 ответа

документация предлагает, чтобы Server.UrlEncode обработал амперсанды правильно.

я только что протестировал Ваш точный код, и возвращаемая строка была правильно закодирована:

http://www.example.com/?Value=This+%26+That

23
ответ дан 29 November 2019 в 23:30
поделиться

Технически выполнение:

value = value.Replace("&", "%26") 

добьется цели.

РЕДАКТИРОВАНИЕ: кажется, существуют некоторые щекотливые вопросы с целыми методами UrlEncode/HttpEncode, которые не вполне добиваются цели. Я описал простой метод некоторое время назад, который может пригодиться. Это должно охватить все главные проблемы кодирования и его легкое для записи "desanitizer" также.

Protected Function SanitizeURLString(ByVal RawURLParameter As String) As String

      Dim Results As String

      Results = RawURLParameter    

      Results = Results.Replace("%", "%25")
      Results = Results.Replace("<", "%3C")
      Results = Results.Replace(">", "%3E")
      Results = Results.Replace("#", "%23")
      Results = Results.Replace("{", "%7B")
      Results = Results.Replace("}", "%7D")
      Results = Results.Replace("|", "%7C")
      Results = Results.Replace("\", "%5C")
      Results = Results.Replace("^", "%5E")
      Results = Results.Replace("~", "%7E")
      Results = Results.Replace("[", "%5B")
      Results = Results.Replace("]", "%5D")
      Results = Results.Replace("`", "%60")
      Results = Results.Replace(";", "%3B")
      Results = Results.Replace("/", "%2F")
      Results = Results.Replace("?", "%3F")
      Results = Results.Replace(":", "%3A")
      Results = Results.Replace("@", "%40")
      Results = Results.Replace("=", "%3D")
      Results = Results.Replace("&", "%26")
      Results = Results.Replace("$", "%24")

      Return Results

End Function
16
ответ дан 29 November 2019 в 23:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: