Как ввести <? echo "hello"; ?>
<? echo "hello"; ?>
<? echo "hello"; ?>
в файле .js. Это приложение jquery, поэтому js-файл.
Спасибо, Жан
Вы могли бы это сделать только в том случае, если интерпретатор PHP настроен на запуск в * .js-файлах, который по умолчанию его не будет. Честно говоря, я бы не рекомендовал такое поведение.
Вместо этого я бы сделал что-то вроде этого (этот метод также можно использовать для файлов CSS):
<script type="text/javascript" src="js.php"></script>
js.php
<?php //GZIP the file and set the JavaScript header ob_start("ob_gzhandler"); header("Content-type: text/javascript"); //Set a JavaScript variable based on PHP work echo 'var logged_in_user = "'.$_SESSION['username'].'";'; //Require an external script require_once($_SERVER['DOCUMENT_ROOT']."/path/to/jquery.js"); ?> //More Javascript functions and code here $(document).ready(function() { $('#mydiv').tipsy(); }); <?php //Flush the output buffer ob_end_flush(); ?>
Я лично делаю это по многим причинам.
Это центральное место для добавления, удаления или изменения моего JavaScript для всего сайта. Я даже могу использовать проверки $_GET
чтобы сделать определенные сценарии условными в зависимости от того, как я написал <script>
.
Например, <script type="text/javascript" src="js.php?var=1"></script>
. Затем я могу проверить $_GET['var']
в файле js.php.
Вы регулярно не используете PHP в своих файлах JavaScript. Javascript – это клиентский язык, который интерпретируется в вашем веб-браузере. PHP запускается на веб-сервере.
Однако, если вам необходимо передать данные из вашего PHP-кода в ваш javascript-документ, вы можете сделать что-то вроде:
$js = "<script> myObject = " . json_encode($your_data) . " </script>"; print $js;
Если вы сделаете это в своей <head>
части вашего HTML-документа, у вас будет доступ к myObject
в других JS-файлах, которые вы загрузите после этого.
$your_data
может быть массивом или любым объектом, строкой или целым числом. Ищите PHP JSON вокруг межсетевых экранов.
Я думаю, что невозможно ввести php в js-файл, но: попытайтесь создать элемент div, например, или вход …
а затем использовать эти функции для получения значения тега div.
function AddHiddenValue(oForm) { var strValue = document.getElementById("city").value; alert("value: " + strValue); var oHidden = document.createElement("input"); oHidden.name = "printthisinput"; oHidden.value = strValue; oForm.appendChild(oHidden); }
Это происходит из другой формы объекта (выберите …)
document.getElementById("city").value;
Хорошо, ребята, вот ответ
Q: Я хочу ввести значение для переменной в файл .js, теги php не разрешены, и js выдает ошибку.
A: напишите
<script> <? var value_pass = echo "hello"; ?> </script>
<script> <? var value_pass = echo "hello"; ?> </script>
перед указанным .js файлом
В указанном файле .js значение var = value_pass;
Таким образом, нет необходимости иметь какой-либо из ob_end_flush.
Если это нецелесообразно, сообщите мне.
Спасибо, Жан