簡體   English   中英

在PHP中使用帶有參數的JS函數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM