Заменить текущую страницу содержимым ajax

Можно использовать operator.itemgetter для этого:

import operator
stats = {'a':1000, 'b':3000, 'c': 100}
max(stats.iteritems(), key=operator.itemgetter(1))[0]

И вместо того, чтобы создать новый список в использовании памяти stats.iteritems(). key параметр к эти max() функция является функцией, которая вычисляет ключ, который используется, чтобы определить, как оценить объекты.

Обратите внимание на то, что, если у Вас должна была быть другая пара "ключ-значение" 'd': 3000, который этот метод только возвратит один из два даже при том, что у них обоих есть максимальное значение.

>>> import operator
>>> stats = {'a':1000, 'b':3000, 'c': 100, 'd':3000}
>>> max(stats.iteritems(), key=operator.itemgetter(1))[0]
'b' 

При использовании Python3:

>>> max(stats.items(), key=operator.itemgetter(1))[0]
'b'
28
задан serv-inc 2 May 2017 в 10:54
поделиться

2 ответа

В вашем обратном вызове ajax:

success: function (data) {
   $("html").html($(data).find("html").html());
}

Это заменит весь HTML-контент страницы на тот, который получен из вашего AJAX-запроса. Работает в Chrome ... не уверен насчет IE.

Несмотря на это, я не уверен, почему вы хотите включить раздел <head> ... но вы можете легко изменить вышеприведенное, чтобы отобразить только то, что находится в теле ответа AJAX, и добавить его к Div или даже лайтбокс. Намного лучше.

2
ответ дан 28 November 2019 в 03:34
поделиться

Я не думаю, что есть способ сделать это. Iframes предназначены для загрузки других страниц, и нет другой песочницы, в которую можно выгрузить отдельную страницу - для этого были созданы фреймы.

Это может быть сложно с используемой платформой, но, вероятно, стоит, чтобы она генерировала разные ошибки для ваших запросов Ajax. Мои страницы Ajax будут отправлять только когда-либо

{"exit": 1, "message": "As in the shell, a non-zero exit is an error and this is why..."}
0
ответ дан 28 November 2019 в 03:34
поделиться
Другие вопросы по тегам:

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