- 0
Хранение данных на html-странице для xhr
-
Similar Content
-
By ioprst
Привет. Проблема в следующем. Есть одна страничка, на которой две вкладки, на второй вкладке исполняется js. В firefox'e все как надо, запускаю localhost и на какой-бы вкладке изначально я не оказался, анимация svg (js выполняет) работает, после перехода с 2ой вкладки на первую и обратно, анимация также работает. Что происходит в Хроме: Если я запускаю страницу (перезапускаю) и оказываюсь на второй вкладке, то анимация есть, стоит перейти с 2ой вкладки на 1ю и обратно, анимация пропадает. Суть в том, что в хроме при любом переходе между вкладками js перестает работать, либо проблема в XMLHttpRequest. Привожу js код, который исполняется на второй вкладке:
var svgDoc; var xhr; var c1_boolFlow = false; window.onload = function() { svgDoc = document.getElementById("cns2Id").contentDocument; var timer = setInterval(anim, 100); var timerPost = setInterval(setPost, 100); } function anim() { c1anim(); } // Функция отправки запроса function setPost() { xhr = new XMLHttpRequest(); var send = ["c1_boolFlow"]; xhr.open("POST", 'cgi-bin/getVars.py', true); xhr.setRequestHeader('Content-type', 'application/json; charset=utf-8') xhr.onreadystatechange = onResponse; xhr.send(send); } // Функция обработки ответа function onResponse() { if (xhr.readyState != 4) { return; } var respJSON = JSON.parse(xhr.responseText); c1_boolFlow = respJSON.c1_boolFlow; } ...
-
By Alexys
Запрос данных с сервера с использованием JQuery-Аякс запроса (ajax) Код на js следующий:jQuery.ajax({ type: "POST", url: Url.Action("GetMyList", "ServerController"), contentType: "application/json; charset=utf-8", dataType: "json", data: JSON.stringify({}), success: function(data){}, error: function(data){}});На серверной стороне:
1. Если метод без параметра, то:
public class ServerController : Controller{[HttpPost]public NJsonResult GetReportPeriodList(){try{var list = MySqlAdapter.GetList();return new NJsonResult { Data = list };}catch (Exception e){return new NJsonResult{Data = new{error = true,msg = "Ошибка получения списка."}};}}}Возникает ошибка в IE (10 версия), в консоли (в дебаггере js (в метод error: function(data){}) возвращается структура, и в одном поле просто "error"): SCRIPT7002: XMLHttpRequest: Network Error 0x2efe, Could not complete the operation due to error 00002efe.Хром отрабатывает успешно!В итоге нет результата!
2. Если же в метод добавим параметр:
public class ServerController : Controller{[HttpPost]public NJsonResult GetReportPeriodList(string code){try{var list = MySqlAdapter.GetList();return new NJsonResult { Data = list };}catch (Exception e){return new NJsonResult{Data = new{error = true,msg = "Ошибка получения списка."}};}}}То Всё проходит в IE успешно!!! Как так?
Подскажите как быть? Как использовать методы без параметров. Получить просто какое-либо значение, массив объектов, данные.
-
Question
alex_web64
Здравствуйте.
Мне нужно на странице сохранить некоторые данные, чтобы в будущем подгрузить их помощью xhr. Каким образом это лучше сделать в плане производительности? Создать скрытый div с data-* параметрами, или есть лучшее решение?
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.