Следующий код взят из

<?php

  jsfunction();
  // or
  echo(jsfunction());
  // or
  // Anything else?

xyz.html (при нажатии кнопки), он вызывает xyz.js wait() См. . В противном случае этот wait.php wait() выражение

function wait() 
{
  xmlhttp=GetXmlHttpObject();
  var url="wait.php"; 
  xmlhttp.onreadystatechange=statechanged; 
  xmlhttp.open("GET", url, true); 
  xmlhttp.send(null);
} 

function statechanged()
{ 
  if(xmlhttp.readyState==4) {
       document.getElementById("txt").innerHTML=xmlhttp.responseText;
  }
}

значения этого {{}} этого свойства работает нормально, но он не вызывается так, как я хочу.

<?php echo "<script> loadxml(); </script>"; 

Как указывают @squint и @mekdev, вы получаете лучшая производительность, сначала создав функцию вне цикла, а затем связав результаты внутри цикла. loadxml() из другого файла PHP таким же образом.

Переменная loadxml() Вся сложная работа, которую вы можете выполнять с таким языком, как PHP, — чтение из баз данных и веб-сервисов и все такое — конечной целью является точно такой же основной принцип: генерировать строку HTML *

prop set

Ваша большая строка HTML не становится чем-то более особенным, пока она не будет загружена веб-браузером. Как только браузер загружает страницу,

Итак, вы не «вызываете JavaScript из PHP», вы «включаете вызов функции JavaScript в свой вывод». method: Пример: —

Есть много способов сделать это, но вот пара.

Выход из режима php в режим прямого вывода:

Использование только PHP:

echo '<script type="text/javascript">',
     'jsfunction();',
     '</script>'
;

Вам не нужно возвращать имя функции или что-либо подобное. Прежде всего, прекратите писать запросы AJAX вручную. Ты только усложняешь себе. Получите jQuery или одну из других отличных платформ.

<?php
    // some php stuff
?>
<script type="text/javascript">
    jsFunction();
</script>

Во-вторых, поймите, что вы уже собираетесь выполнять код javascript после получения ответа от вызова AJAX.

или что-то подобное. технически вы не вызываете функцию в PHP, но это настолько близко, насколько вы собираетесь получить.

— это самый быстрый способ очистить массив (не принимая функцию

$.get(
    'wait.php',
    {},
    function(returnedData) {
        document.getElementById("txt").innerHTML = returnedData;

        //  Ok, here's where you can call another function
        someOtherFunctionYouWantToCall();

        // But unless you really need to, you don't have to
        // We're already in the middle of a function execution
        // right here, so you might as well put your code here
    },
    'text'
);

function someOtherFunctionYouWantToCall() {
    // stuff
}

Теперь, если вы не можете отправлять имя функции из PHP обратно в вызов AJAX, вы тоже можете это сделать.

$.get(
    'wait.php',
    {},
    function(returnedData) {
        // Assumes returnedData has a javascript function name
        window[returnedData]();
    },
    'text'
);

* или JSON или XML и т. д.

Я всегда просто использую echo "<script> function(); </script>"; В настоящее время (февраль 2012 года) для этого есть новая функция. Проверить

Вы не можете. Вы можете вызывать функцию JS из HTML говорится, что

Сайт создан так, что вы просто даете ему любой URL, и он генерирует для вас код javascript / jquery, который позволяет вам получать html / data независимо от его происхождения. Другими словами, он делает любой URL или веб-страницу запросом JSONP.

<?php

$v8 = new V8Js();

/* basic.js */
$JS = <<< EOT
len = print('Hello'   ' '   'World!'   "\n");
len;
EOT;

try {
  var_dump($v8->executeString($JS, 'basic.js'));
} catch (V8JsException $e) {
  var_dump($e);
}

?>

с помощью PHP, но это совсем не так. . Если вы хотите выполнить JS и использовать результаты в PHP, используйте V8JS

Если вы хотите отобразить его для последующего выполнения, все в порядке

Что такое расширения в php v8js?

V8Js::registerExtension('say_hi', 'print("hey from extension! "); var said_hi=true;', array(), true);
$v8 = new V8Js();
$v8->executeString('print("hello from regular code!")', 'test.php');
$v8->executeString('if (said_hi) { print(" extension already said hi"); }');

Если вы не можете использовать http://htmlunit.sourceforge.net/

, если вы хотите выполнить HTML & Amp ; JS и использовать вывод в PHP вы также можете попробовать это: — ваше решение

sort ()

<td onClick= loadxml()><i>Click for Details</i></td>

function loadxml()
{
    result = loadScriptWithAjax("/script.php?event=button_clicked");
    alert(result);
}

// script.php
<?php
    if($_GET['event'] == 'button_clicked')
        echo ""You clicked a button"";
?>

PHP работает на сервере. JavaScript работает в клиенте. Так что php не может вызвать функцию JavaScript.

попробуйте так

    public function PHPFunction()
    {
            echo '<script type="text/javascript">
                 test();
            </script>'; 
    }
    <script type="text/javascript">
    public function test()
    {
        alert('In test Function');
    }
    </script>

Xajax

<?php
 if(your condition){
     echo "<script> window.onload = function() {
     yourJavascriptFunction(param1, param2);
 }; </script>";
?>

этот код Наше интуитивное предположение могло бы состоять в том, что довольно близка к тому, что вы хотите. Я продемонстрирую на примере Вот кнопка на веб-странице:

<button onclick="xajax_addCity();">Add New City</button> 

является функцией Javascript , право? Ну, правильно и неправильно. Крутая вещь, которую допускает Xajax, заключается в том, что у нас нет JS-функции с именем xajax_addCity(), которая могла бы делать то, что делает PHP!xajax_addCity(), но у нас есть PHP-функция с именем addCity(), Которые могут делать все, что делает PHP!

<?php function addCity() { echo "Wow!"; } ?>

Подумай минутку. Мы фактически вызываем функцию PHP из кода Javascript! Этот упрощенный пример был просто для того, чтобы разжечь аппетит, лучшее объяснение на сайте Xajax, получайте удовольствие!

если вы хотите вызвать метод внутри echo, вы должны заключить их в одинарные кавычки:

    function f() {
      //code
      alert("its calling from echo ");
    }

    echo "<td onclick='f();'>".Method calling."</td>";