Chciałem wywołać funkcję PHP w kodzie JavaScript, która wyświetla wartość:
<?php
function ex()
{
$num=10;
echo($num);
}
echo "<script type="text/javascript">
function sam_click(clicked)
{
var x="<?php ex(); ?>";
alert(x);
return false;
}
</script>"?>
Jednak to nie działa. Czy możesz pomóc?
Odpowiedzi:
1 dla odpowiedzi № 1Spróbuj tego:
<?php
function ex()
{
$num=10;
echo($num);
}
echo "<script type="text/javascript">
function sam_click(clicked)
{
var x="" . ex() . ">";
alert(x);
return false;
}
</script>"?>
1 dla odpowiedzi nr 2
Po prostu spróbuj z:
...
var x="" . ex() . "";
...
1 dla odpowiedzi nr 3
Spróbuj powtórzyć tylko to, czego potrzebujesz
<?php
function ex()
{
$num=10;
echo($num);
}
?>
<script type="text/javascript">
function sam_click(clicked)
{
var x="<?php ex(); ?>";
alert(x);
return false;
}
</script>
0 dla odpowiedzi nr 4
function ex()
{
$num=10;
echo $num;
return $num; // if you want to get JS alert
}
echo "<script type="text/javascript">
function sam_click(clicked)
{
var x=".ex().";
alert(x);
return false;
}
sam_click(); // if you want to get JS alert
</script>";
0 dla odpowiedzi № 5
zamiast echa $ num, zwróć go, a następnie dołącz do skryptu.
<?php
function ex()
{
$num=10;
return ($num);
}
echo "<script type="text/javascript">
function sam_click(clicked)
{
var x="" . ex() . "";
alert(x);
return false;
}
</script>"?>
0 dla odpowiedzi № 6
inne rozwiązanie z heredoc i nowdoc:
<?php
// helper to call functions as nowdoc
// example: {$fn( function() )}
function fn($functionCall)
{
return $functionCall;
}
$fn = "fn";
function ex()
{
return 20;
}
$js = <<<EOT
<script type="text/javascript">
function sam_click(clicked)
{
var x="{$fn(ex())}";
alert(x);
return false;
}
</script>
EOT;
echo $js;
Znajdź więcej szczegółów na temat PHPDoc: