2015-06-19 2 views
-1

Я пытаюсь экспериментировать с некоторыми кодами. Я посылаю XMLHttpRequest в яваскрипта файл, в котором я только что document.write('hello world'); и я использую этот код в головной части моего HTML документа:XMLHttpRequest в .js файл

<script> 
     function loadXMLDoc() { 
     var xmlhttp; 
     if (window.XMLHttpRequest) { 
      xmlhttp = new XMLHttpRequest(); 
     } else { 
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
     } 
     xmlhttp.onreadystatechange = function() { 
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
       document.getElementById("myDiv").innerHTML = xmlhttp.responseText; 
      } 
     } 
     xmlhttp.open("GET", "java.js", true); 
     xmlhttp.send(); 
    } 
</script> 

и в java.js есть только одна строка кода

document.write('hello world'); 

Я ожидаю, что результат должен быть только «hello world», но он печатает всю строку document.write ('hello world') ;. Так есть ли способ получить только «привет мир» как responseText? Использование этих файлов. Я знаю, что это можно сделать с помощью PHP/ASp или только с текстовым файлом, но это была проблема из моих колледжских дней до двух лет, когда я был студентом, чтобы сделать это, используя файл javascript, и все же у меня нет, я дорог, как получить это. Я хочу знать это из превосходных мозгов мира при переполнении стека.

+0

Просто выполните код. – Anonymous

+0

использовать тег скрипта для инъекции 'Hello World' на месте, простой ajax не будет работать для этого ... – dandavis

ответ

1

Единственный способ сделать это - ответить на eval, и вы бы хорошо знали побочные эффекты использования eval.

Замените xmlhttp.responseText на eval(xmlhttp.responseText), и он должен работать.

Примечание: Соблюдайте осторожность, а eval ing!

Просто не забудьте отменить разметку, как <script>, в ответном сообщении, поскольку eval не будет иметь желаемого эффекта.

-1

xmlhttp.responseText возвращает строку. Поэтому просто поместите мир привет в файл java.js. На самом деле java.js не будет выполнять JavaScript.

+0

Задача была принята и решена в те дни, поэтому, если вы не знаете, тогда не думайте, что это невозможно. –

+0

Извините, пытаясь помочь ... И каково было решение? –