Ich versuche, eine Javascript-Funktion von PHP aufzurufen. Nach all den Beispielen, die ich mir angesehen habe, sollte das Folgende funktionieren, aber es funktioniert nicht. Warum nicht?
<?php
echo "function test";
echo '<script type="text/javascript"> run(); </script>';
?>
<html>
<script type="text/javascript">
function run(){
alert("hello world");
}
</script>
</html>
3 Antworten
Ihr HTML ist ungültig. Ihnen fehlen einige Tags.
Und Sie müssen die Funktion aufrufen, nachdem sie wie folgt deklariert wurde
<html>
<head>
<title></title>
<script type="text/javascript">
function run(){
alert("hello world");
}
<?php
echo "run();";
?>
</script>
</head>
<body>
</body>
</html>
In diesem Fall können Sie den Lauf vor der Methodendeklaration platzieren. Sobald Sie den Methodenaufruf jedoch in ein anderes Skript-Tag einschließen, muss das Skript-Tag nach der Methodendeklaration stehen.
Versuchen Sie es mit http://jsfiddle.net/qdwXv/
Wie andere vorgeschlagen haben, muss die Funktion zuerst deklariert werden. Wenn Sie jedoch zuerst das JavaScript von PHP aus wiedergeben müssen, können Sie es entweder in einer PHP-Variablen speichern, um es später wiederzugeben, oder Ihren Code warten lassen, bis der Dom zuerst geladen ist ...
document.ready = function() {
run()
}
Wenn Sie jQuery oder ein anderes Framework verwenden, haben sie wahrscheinlich eine bessere Möglichkeit, dies zu tun ... In jQuery:
$(function(){
run();
})
Die Funktion muss vor der Verwendung deklariert werden
es sollte sein
<html>
<script type="text/javascript">
function run(){
alert("hello world");
}
<?php
echo "function test";
echo run(); ;
?>
</script>
</html>
Verwandte Fragen
Neue Fragen
php
PHP ist eine weit verbreitete, übergeordnete, dynamische, objektorientierte und interpretierte Skriptsprache, die hauptsächlich für die serverseitige Webentwicklung entwickelt wurde. Wird für Fragen zur PHP-Sprache verwendet.