Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.08.2011, 20:32
Новичок на форуме
Отправить личное сообщение для DelphiWorld Посмотреть профиль Найти все сообщения от DelphiWorld
 
Регистрация: 12.07.2010
Сообщений: 5

XMLHttpRequest <script>
html:
<div id="enter"></div>
js:
req.open('POST', '../AJAX/chat.pl', true);
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
req.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
req.send('id=send&text='+txt+'&refresh=refresh');
req.onreadystatechange = function() {
if(req.readyState==4) {
if(req.status == 200) {
document.getElementById('enter').innerHTML = responseText;
}	
}	
};


Узнал что responseText не дружит с переданным внутри тегом <script> , как обойти это органичение? т.к. серверная часть передает <script>, заносит в блок и там обрабатывает

дополню: jquery ajax принимает <script> и корректно обрабатывает, но не хочется грузить целую библиотеку, ради таких "мелочей" ))

Последний раз редактировалось DelphiWorld, 31.08.2011 в 20:37. Причина: дополнение
Ответить с цитированием
  #2 (permalink)  
Старый 01.09.2011, 00:40
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

надо eval'ить скрипт.

пример из prototypejs.

var ScriptFragment = '<script[^>]*>([\\S\\s]*?)<\/script>';
function extractScripts() {
    var matchAll = new RegExp(ScriptFragment, 'img'),
        matchOne = new RegExp(ScriptFragment, 'im');
    return (this.match(matchAll) || []).map(function(scriptTag) {
      return (scriptTag.match(matchOne) || ['', ''])[1];
    });
}
function evalScripts() {
    return this.extractScripts().map(function(script) { return eval(script) });
}
String.prototype.extractScripts = extractScripts;
String.prototype.evalScripts = evalScripts;

*!*
"<div>loloiiu</div>*!*<script>alert('hello from ajax!')</script>*/!*lolol<span>lkjlkj</span>lkjlkj"*!*.evalScripts()*/!*
*/!*
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обёртка под XMLHttpRequest systemiv Общие вопросы Javascript 4 31.08.2011 08:59
XMLHttpRequest status=0, хотя запрос проходит. arigasa AJAX и COMET 4 15.02.2011 20:14
XMLHttpRequest не работает lgv Firefox/Mozilla 0 14.04.2010 17:07
Создание и уничтожение XMLHttpRequest Vlas AJAX и COMET 9 22.05.2009 12:38
XMLHttpRequest серверная часть mmfStudent Серверные языки и технологии 7 14.04.2009 01:52