<script> и JavaScript не работает в файле HTML для всех браузеров после XMLHTTPREQUEST - PullRequest
0 голосов
/ 25 января 2019

Здравствуйте, я новичок в JavaScript. Я просмотрел другие сообщения, но не могу решить свою проблему.

Ранее я пытался поиграть со следующим скриптом ( Как читать текстовый файл в JavaScript ). Я получил это работает успешно НЕСКОЛЬКО раз:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>Read File (via AJAX)</title>
<script type="text/javascript">
var reader = new XMLHttpRequest() || new ActiveXObject('MSXML2.XMLHTTP');

function loadFile() {
    reader.open('get', 'test.txt', true); 
    reader.onreadystatechange = displayContents;
    reader.send(null);
}

function displayContents() {
    if(reader.readyState==4) {
        var el = document.getElementById('main');
        el.innerHTML = reader.responseText;
    }
}

</script>
</head>
<body>
<div id="container">
    <input type="button" value="test.txt"  onclick="loadFile()" />
    <div id="main">
    </div>
</div>
</body>
</html>

Во время тестирования этого скрипта он внезапно перестал работать! Я заверил, что мои блокировщики контента отключены, и в моих веб-браузерах включен javascript. Я не уверен, заблокировал ли я возможность использования javascript в моих веб-браузерах при использовании этого XMLHTTPREQUEST или, возможно, перегрузил его. Я даже попытался вставить функцию reader.abort (), чтобы закрыть запрос, если он все еще был открыт. Я попытался вставить функции alert () для устранения неполадок, которые не работали. Я попытался перезагрузить компьютер, который не работал. Я использую MAC и пробовал последние версии Firefox, Chrome и Safari, которые сейчас не работают с javascript.

Это так плохо, что я даже не могу заставить этот простой пример JavaScript работать.

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script type=“text/javascript”>
document.write(“<h1>This is a test</h1>”);
</script>
</head>
<body>
</body>
</html>

ПОЖАЛУЙСТА, ПОМОГИТЕ! Я не знаю, что я сделал или как решить проблему.

1 Ответ

0 голосов
/ 25 января 2019

Вышеуказанный скрипт работает, только если вы загружаете текстовый файл с сервера.Убедитесь, что файл находится в том же месте, что и ваш HTML-файл на сервере, и загрузите страницу с адресом вашего сервера.Скорее всего, вы делаете неправильно, пытаясь получить доступ к клиентскому файлу.Это не работает, потому что это ОГРОМНОЕ нарушение безопасности, только клиент может отправить вам файл для чтения (Если это ваша цель, то я советую вам использовать FileReader, пример кода можно найти здесь ) .

О вашем втором сценарии вы используете «вместо».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...