Я пишу простой скрипт, который будет читать .txt-файл. У меня было довольно много проблем с тем, чтобы он работал, теперь я бы хотел его обновить. В основном я ищу вариант, который остановил бы программу, пока файл не будет открыт и не будет прочитан. Я попытался поместить время(), ожидая изменения какой-либо переменной, но при этом останавливает всю программу - делает невозможным щелчок по открытому файлу.Простая программа javascript, читающая файл
HTML:
<html>
<head>
</head>
<body>
<input type="file" id="fileInput">
<script src="1dn.js"></script>
</body>
</html>
Javascript:
var string;
window.onload = function() {
var fileInput = document.getElementById('fileInput');
fileInput.addEventListener('change', function(e) {
var file = fileInput.files[0];
var reader = new FileReader();
reader.onload = function(e) {
string = reader.result;
alert(string);
}
reader.readAsText(file);
});
}
*** wait here until file is opened and read
*** do some other stuff
Вы можете использовать вызов AJAX, чтобы проверить, существует ли файл, а затем в функции обратного вызова 'success', прочитать асинхронный файл. Это предотвратит замораживание браузера – Tgsmith61591
Нет, вы не можете остановить выполнение javascript. Просто делайте все «другие вещи» в обратном вызове onload. – Bergi