[英]Using JS function with parameters in php
JS函數是
function func(arg){
alert(arg);
}
當我做
echo "<div onclick=\"func($arg)\">Text</div>";
在PHP中,它不起作用,但是當我這樣做時
echo "<div onclick=\"func()\">Text</div>";
它可以正常工作,並彈出帶有未定義文本的警報。
如何傳遞論點?
您需要引用參數。 例如
<?php
$foo = 'bar';
?>
echo "function($foo) { ... }";
將要產生代碼
function(bar) { ... }
其中bar
將被解釋為未定義的變量。
最安全的方法是通過json_encode()輸出PHP變量,以確保您生成的語法有效的JavaScript。 例如
echo 'function(' . json_encode($foo) . ') { ... }';
會產生(在這種情況下)
function ('bar') { ... }
您需要用引號將$arg
換行。 例:
echo "<div onclick=\\"func('$arg')\\">Text</div>";
(因為您在字符串中使用雙引號,所以在arg
周圍使用單引號)
您可以這樣做(如果$ args當然存在)
echo '<div onclick="func('.$arg.')">Text</div>';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.