0

JS関数は

function func(arg){  
    alert(arg);  
}

私がする時

echo "<div onclick=\"func($arg)\">Text</div>";

PHPでは機能しませんが、機能すると

echo "<div onclick=\"func()\">Text</div>";

それは機能し、未定義のテキストを含むアラートがポップアップします。

引数を渡すにはどうすればよいですか?

4

3 に答える 3

1

引数を引用する必要があります。例えば

<?php
$foo = 'bar';
?>

echo "function($foo) { ... }";

コードを生成します

function(bar) { ... }

wherebarは未定義の変数として解釈されます。

最も安全な方法は、php 変数を json_encode() 経由で出力して、構文的に有効な JavaScript を生成していることを保証することです。例えば

echo 'function(' . json_encode($foo) . ') { ... }';

(この場合)

function ('bar') { ... }
于 2013-07-02T15:52:49.120 に答える
0

引用符で囲む必要があり$argます。例:

echo "<div onclick=\"func('$arg')\">Text</div>";

(文字列に二重引用符を使用しているため、単一引用符をarg使用しています)

于 2013-07-02T15:52:50.203 に答える