FFFF

JavaScript внутри PHP не работает (document.getElementById)

Что-то странное происходит, но я не могу заставить код JavaScript document.getElementById работать внутри PHP. Например, загрузите следующий PHP-код (ниже) в файл PHP и запустите его, нет предупреждения JavaScript? Но если вы скопируете исходный код, который PHP эхом (или напечатал), и запустили его как HTML файл, есть предупреждение JavaScript? Таким образом, любой элемент, созданный внутри тегов PHP, не запускается в JavaScript, даже если JavaScript хранится вне тегов PHP? Вот демо-код PHP:

 document.getElementById('my_id').contentWindow.onload = function() "; ?> 
 document.getElementById('my_id').contentWindow.onload = function() 

Вот исходный код, который появляется (по запросу) (также contentWindow.onLoad работает отлично для контента, который не находится в том же домене, что и мой в Safari):

 document.getElementById('my_id').contentWindow.onload = function() 

Моя проблема в том, что в HTML этот код работает нормально, а предупреждение вызывается. в PHP код не работает и предупреждение никогда не вызывается. Что-то не так с тем, как PHP обрабатывает document.getElementById , в .contentWindow.onload нет ничего плохого.

«Таким образом, любой элемент, который создается внутри тегов PHP, не запускается в javascript, даже если он хранится вне тегов php?» — Браузер не знает или не заботится, какая часть ответа была динамически сгенерирована в тегах «Но если вы скопируете исходный код, который повторил php», — не могли бы вы показать нам именно то, что было отражено, как видно из опции браузера View Page Source?

Источник

how to include js file in php?

PHP is completely irrelevant for what you are doing. The generated HTML is what counts.

In your case, you are missing the src attribute. Use

@sebastian: More specifically, just change «href» to «src». Here’s a drop-in replacement for your original: ?>

I’m sorry but this answer isn’t really true. If you want to reduce HTTP requests, PHP is in fact the answer. That way the script generates all the content for the browser rather than it having to fetch it from you or another web host. For example, including the jquery library instead of the actual jquery repository.

@Cl0ttERS this specific question is still not a PHP issue though. Everything the browser gets to see is the generated HTML; PHP only plays a role in generating it. It’s true that you can use PHP to put all your stuff in one script, though (although that brings a new host of problems. )

I found a different solution that I like:

Also works with style-tags and .css-files in the same way.

If this code runs multiple times it will generate empty script tags from the second occurrence onwards. This might or might not be the desired result depending on your use case.

I have never been a fan of closing blocks of PHP to output content to the browser, I prefer to have my output captured so if at some point within my logic I decide I want to change my output (after output has already been sent) I can just delete the current buffer.

But as Pekka said, the main reason you are having issues with your javascript inclusion is because your using href to specify the location of the js file where as you should be using src .

If you have a functions file with your functions inside then add something like:

function js_link($src) < if(file_exists("my/html/root/" . $src)) < //we know it will exists within the HTTP Context return sprintf("",$src); > return ""; > 

The n in your code without the need for closing your blocks with ?> you can just use:

echo js_link("jquery/1.6/main.js"); 

Pekka has the correct answer (hence my making this answer a Community Wiki): Use src , not href , to specify the file.

the first tag in the document.write function closes
what is the correct way to do this?

You don’t want or need document.write for this, but just in case you ever do need to put the characters inside a script tag for some other reason: You do that by ensuring that the HTML parser (which doesn’t understand JavaScript) doesn’t see a literal . There are a couple of ways of doing that. One way is to escape the / even though you don’t need to:

  

Or if you’re feeling more paranoid:

  

. since in each case, JavaScript sees the string as but the HTML parser doesn’t.

Источник

JavaScript не работает в .php

Не подскажете, почему не работает javascript? alert даже не выводит.

Вопрос в целом по первой части. PHP-код работает нормально вроде.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
 echo '        17 "; } $fp = fopen("countGoods.txt", "w"); $test = fwrite($fp, $txtfromfile); if ($test) echo 'Succes'; else echo 'Error'; fclose($fp); echo $txtfromfile."
"
; } ?>

Не работает скрипт взаимодействия JavaScript и php
Есть функция на JS передающая данные на сервер, и вставляющая результат на страницу: function.

Не работает авторизация php, javascript. Что не так в коде?
Вот собственно код. При нажатии заполнении логина и пароля и нажатии на ВХОД. Форма пропадает, но.

Не работает PHP код. Файлы .php не обрабатываются, хотя, если занести в html, всё работает.
не могу разобраться с проблемой. установила денвер, вроде все работает, но как только начала.

Php+javascript В зависимости от клика вывести переменную php в новое окно
Есть код. В коде две ссылки. При нажатии на первую ссылку должно открыться окно (можно вкладка) и в.

Источник

Не работает Java script на странице с расширением php [закрыт]

Вопросы с просьбами помочь с отладкой («почему этот код не работает?») должны включать желаемое поведение, конкретную проблему или ошибку и минимальный код для её воспроизведения прямо в вопросе. Вопросы без явного описания проблемы бесполезны для остальных посетителей. См. Как создать минимальный, самодостаточный и воспроизводимый пример.

Помогите пожалуйста! Имеется скрипт (java script) встроенный в php-страницу (скрипт должен менять текстовые смайлы на графические) Java script

  

Сам скрипт отлично работает в html странице, а на php не работает. Пожалуйста, помогите разобраться, в чём проблема и есть ли из неё выход.

Источник

Как исполнить javascript внутри php файла, который загружает AJAX?

Есть файл index.php к которому подключен AJAX без JQUERY. AJAX загружает файл race-data.php каждые 50мс, внутри race-data.php есть javascript код и php код. Но javascript код - не работает. Возможно ли загрузить таким образом javascript код из файла race-data.php?

P.S Если не знаете как сделать без JQUERY, напишите с JQUERY.

  

Простой 7 комментариев

Spartak (Web-StyleStudio), я уверен что нужно, даже если поставить каждые 1 секунда, результат не изменится, javascript не исполняет любой код, внутри php файла, посылаемого через ajax.

Немного другой вопрос, но ответ приблизительно тот же
Как пофиксить неработающий import в клиентском js файле в html, работающий на сервере node.js w/o express?
вот так надо подключать скрипты чтобы они выполнились

kocherman, Спасибо за ответ. Но я понятия не имею что мне писать в параметр cb, при вызове функции require. В моем случае.

Роман, параметр cb необязательный - обычно, в cb передают функцию, если надо отследить окончание операции, в данном случае загрузки и выполнения скрипта по url из первого параметра.

Конечно "не исполняет любой код", здесь совсем другой принцип действия, в вашем случае: js -> ajax -> php -> js

Отвечаю сам на свой вопрос - можно. Но поскольку я не обладаю никакой квалификацией в javascript, мое решение - не очень качественное.

1 - писать в php файле код javascript без тегов
2 - не назначать setRequestHeader
3 - запрос не асинхронный (false)
4 - вызвать php файл, который содержит javascript и php через eval

Неприятные камни:
1 php функция echo и ей подобные, работает только внутри javascript кода document.write(' ');
2 стили нужно прописать так же, в

3 документ с каждый обновлением, у меня, не заменяет, а добавляет результат - это большой минус, но я думаю над этим можно еще подумать.

Если камни мешают, можно просто создать 2ую AJAX функцию и в ней будет работать и PHP и JAVASCRIPT, как отдельный сценарий.

  

sound.php (просто для примера)

Источник

Читайте также:  Страница в разработке css
Оцените статью