Динамически конструировать поведение строки запроса в IE и FF / Chrome - PullRequest
0 голосов
/ 21 декабря 2008

Этот код

function LoadContent(Id) {
        alert('Controls/Network/NetworkDetail.aspx?' + rnd() + '&CtlId=' + Id);
        $.get('Controls/Network/NetworkDetail.aspx?' + rnd() + '&CtlId=' + Id, function(data) {
            $(Id).append(data);
        });
        $(Id).removeClass("Waiting");
}

отлично работает в IE7. в предупреждении отображается предполагаемая строка запроса, и страница NetworkDetail.aspx может получить CtlId с помощью Request.QueryString ["CtlId"]

Однако, используя FF3 и Chrome, Request.QueryString ["CtlId"] возвращает ноль, но предупреждение правильно отображало строку запроса (без разницы с IE7).

значение Id обычно равно "# Tab1" или "# Tab2"

Есть идеи, как правильно построить строку запроса?

1 Ответ

5 голосов
/ 21 декабря 2008

# обозначает именованный якорь в HTML и, следовательно, не является частью строки запроса, возможно, вы должны правильно кодировать URL-адреса своих идентификаторов.

например. # Tab1 становится% 35Tab1

Попробуйте использовать escape. например,

Органы управления / Сеть / NetworkDetail.aspx? + rnd () + '& CtlId =' + escape (Id)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...