2013-04-07 4 views
3

Я хочу изменить innerHTML с помощью PHP-кода. Но я не могу заставить его работать, и я не понимаю, почему. Я хочу, чтобы он менял текст на странице, но из другого файла. И поэтому я подумал, что могу использовать это:Как я могу изменить innerHTML с PHP?

document.getElementById ("page"). innerHTML = "<? php echo $ home?>"; 

Но это не сработает.

Вот мой код:

<?php 
$home = file_get_contents("home.php"); 
?> 
<script type="text/javascript"> 
    function ChangePage(page) 
    { 
     if(page == "home") 
      { 
      document.getElementById("page").innerHTML = "<?php echo $home ?"; 
      } 
     } 
</script> 
+4

Для downvoters: 'Пожалуйста, обратите внимание, добавив комментарий, если вы считаете, что сообщение может быть improved.' –

ответ

2

Есть много мелких опечаток. Попробуйте удалить пробел между $ и 'home' и до 'php'. Это правильное заявление:

document.getElementById ("page"). innerHTML = "<?php echo $home?>"; 

Также, где ваш закрывающий тег php?

<?php 
$home = file_get_contents("home.php"); 
?> 
<script type="text/javascript"> 
    function ChangePage(page) 
    { 
     if(page == "home") 
      { 
      document.getElementById("page").innerHTML = "<?php echo $home; ?>"; 
      } 
     } 
</script> 

Хотя это плохая практика. Зачем вам это делать, а не просто загружать php в нужное место? Кроме того, вы понимаете, что «страница» должна быть идентификатором ранее существовавшего div в вашем html, правильно? Нечто подобное было бы лучше:

<html> 
    <body> 
    <div id = "page"> 
     <?php echo file_get_contents("home.php"); ?> 
    </div> 
    </body> 
</html> 
+0

я буду использовать мою панель навигации так, когда я нажимаю кнопку он будет изменен только в мой div с id = страницей. У меня больше, чем просто дома. – user2255325

+0

Из этого комментария я думаю, что вы пытаетесь сделать динамическое извлечение различных разделов страницы с помощью javascript ... вы не можете сделать это таким образом, PHP и JavaScript просто не работают. PHP сначала выполняется на сервере, затем загружается страница и js может выполняться в браузере, но в этот момент PHP не может выполнить (браузер не выполняет PHP). Хотя что-то подобное можно достичь через [Ajax] (http://www.tutorialspoint.com/ajax/). –

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