Как я могу написать JavaScript между двумя тегами в HTML? - PullRequest
0 голосов
/ 26 октября 2011

У меня есть файл PHP, который вставляет код в файл HTML5.Примерно так:

// this works fine
echo '<li>...something</li>';
// this doesn't work
echo '<script type="text/javascript">document.write(\'<li>...something...</li>\');</script>';

Если я "выведу" эти строки на экран, они обе будут работать нормально (конечно, это простой код!).НО этот код выше "echo": вписан в файл HTML5 и выполнен ТАМ.Первый вариант работает, а второй - нет (иногда выдает ошибку 1561).

Пример: http://www.w3schools.com/PHP/php_ajax_database.asp

Другой пример: http://www.modilo.net/dump.html

Может кто-нибудь сказать мне, как я могу записать JavaScript между двумя тегами в коде HTML?

Ответы [ 2 ]

0 голосов
/ 26 октября 2011

Для работы Javascript запишите его в соответствующие теги. Попробуйте код ниже.

<html>
<head>
<?php // dump


// Lets say $BOO in PHP and BOO in javascript have the same value.
$BOO = true;
// Option 1 works fine:
if ( $BOO ) { echo '<li> PHP ... something ... </li>'; } else echo '<li> PHP ...     something else ... </li>';

// Option 2 doesn't work (and I need this!):
echo '<script type="text/javascript">
var BOO = '.$BOO.';
if (BOO) 
document.write(\'<li> JS... something ... </li>\') 
else 
document.write(\'<li> JS ... something else ... </li>\');';
echo '</script>';
?>
</head>
</html>

Этот код имеет optput

PHP ... что-то ...

JS ... что-то ...

0 голосов
/ 26 октября 2011

Javascript BOO не установлен, поэтому вам нужно либо установить его в своем эхо, как:

echo '<script type="text/javascript"> var BOO = '. $BOO .'; // blah</script>';

Или просто введите значение, чтобы оно распечатывалось в браузере пользователя:

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