эй снова stackoverflowers
Я переношу веб-сайт из старого ASP (в VBScript), и там некоторые stuuf я должен iFrame, чтобы сохранить старые вещи, работающие внутри нового контейнера.
на странице aspx У меня есть iFrame с атрибутом runat = "server", чтобы сделать его доступным в коде за файлом.
<iframe id="frmLoader" runat="server" scrolling="auto" width="100%" height="600px"></iframe>
теперь проблема, чтобы получить определенную функциональность, я должен ПОСТИТЬ на страницу (со старого сайта), чтобы сделать ее визуализацией по-разному и, таким образом, дать ответ на POST.
следующий код находится в Page_Load с параметрами курса в объекте postDatap >
byte[] encData = new ASCIIEncoding().GetBytes(postData);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = encData.Length;
Stream dataStream = req.GetRequestStream();
dataStream.Write(encData, 0, encData.Length);
dataStream.Flush();
dataStream.Close();
WebResponse res = req.GetResponse();
StreamReader sr = new StreamReader(res.GetResponseStream());
string s = sr.ReadToEnd();
frmLoader.InnerHtml = s;
боль здесь заключается в том, что я не могу представить строку в iframe. с отладкой я проверил, должно ли что-то появляться и должно, но это не так: p
Кто-нибудь знает, как я получаю строку, обработанную в iframe?
Кроме того, при запуске функции в iframe страница должна оставаться там, с ответом на дополнительные сообщения с исходного сайта (старый asp) Я искал, но не нашел ответов.
Создание обработчика означало бы, что я должен создать пользовательский обработчик для каждой старой страницы, которую я хотел бы использовать тогда?
Я не настолько разбираюсь в углубленном веб-разработке:)
в старом ASP предыдущие разработчики добавили много функциональности в 1 страницу, и с помощью почтового сообщения я могу вызвать эти функции, каждый раз создавая другую страницу.
Может ли обработчик, как вы сказали, быть построенным, чтобы принять множество параметров для изменения сообщения?
EDIT:
Я только что заметил еще одну проблему. обработчик не имеет доступа к сеансу, в котором хранятся данные, чтобы сделать сообщение, в котором я нуждаюсь. там другая должность за действие...
Вы пробовали это вручную? Попробуйте следующее:
<iframe>text</iframe>
Как это отображается в браузере?
Это потому, что iframe не работает. Как и тег img, ему нужен атрибут "src", в котором говорится, откуда идет контент.
Возможно, вы сможете создать файл .ashx(HttpHandler), и пусть он сделает POST и вернет результат. Тогда ваш iframe будет <iframe src="yourHandler.ashx"/>
.