2013-05-22 2 views
1

Я новичок в JavaScript и общих сайтах - так извините, если этот вопрос звучит немного основательно.Чтение файла и возвращаемые данные (JavaScript)

Однако идея состоит в том, чтобы на каждой странице отображалось всплывающее сообщение с информацией. Поскольку веб-сайт является статичным - если на более поздний срок мы хотим изменить сообщение, нам придется редактировать каждую страницу.

Чтобы упростить это, я пытался включить простой текстовый документ на сервер.

На странице будет читаться текстовый документ и отображать сообщение.

Итак, мы просто редактируем текстовый документ, и сообщение, отображаемое на странице, будет меняться.

Мой код так:

<div class="sticky-box" id="x"> 
     <div class="sticky-inner"> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script> 
     <script type="text/javascript"></script> 
     <script> 
      window.addEvent("domready",function(){ 
       var csvRequest = new Request({ 
       url:"text.txt", 
       onSuccess:function(response){       
         document.write(response);      
        } 
       }).send(); 
      }); 
      </script> 
    </div> 

Хотя, он успешно читает документ - он отображает текст вместо веб-страницы. Короче говоря, я получаю «Пример текста примера» на странице, но абсол ничего больше.

У кого-нибудь есть идеи, почему?

Есть ли более простой способ сделать это?

Примечание: повторное использование веб-сайта не вариант!

ответ

1

Вместо document.write(response) вы должны создать контейнер, указав элемент div или span на своей странице и напишите данные в этом контейнере. Когда вы используете documen.write() после завершения загрузки страницы, браузер открывает новый документ и заменяет содержимое текущего документа.

Что-то вроде ниже код должен помочь:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script> 
<script type="text/javascript"></script> 
<script> 
    window.addEvent("domready",function(){ 
    var csvRequest = new Request({ 
    url:"text.txt", 
    onSuccess:function(response){       
    document.getElementById("sticky_inner").innerHTML= response;      
    } 
    }).send(); 
    }); 
</script> 
<div class="sticky-box" id="x"> 
    <div class="sticky-inner" id="sticky_inner"></div> 
</div> 
+0

Работало лечение. Благодаря! : D – user1662290

1

Это происходит потому, что вы используете document.write(response). document.write просто создаст пустой документ и напишет содержимое на нем. Вместо этого вы должны использовать, например, элемент div и написать данные в нем.

Больше на document.write

Смежные вопросы