0

如果我不向函数 myFunction 传递任何参数,它会很好地工作,但如果我传递一个像“$word”这样的参数,它就不起作用。

无参数:php 文件:

<?php
......
$word="bulabula";
$hint="<li onclick='myFunction()'>" . $word . "</li>";
......
echo $hint;
?>

.html 文件:......

<script>
  function myFunction(){
  document.getElementById("s_form_q").value="bulabula";
}
</script>

使用参数:php 文件:

<?php
......
$word="bulabula";
$hint="<li onclick='myFunction($word)'>" . $word . "</li>";
......
echo $hint;
?>

.html 文件:......

<script>
function myFunction(str){
        document.getElementById("s_form_q").value=str;
}

4

2 回答 2

1

您需要引用您传递的参数:

和:

$hint="<li onclick='myFunction($word)'>" . $word . "</li>";

假设$word"hello",上面的行将输出:

<li onclick='myFunction(hello)'>hello</li>

代替

<li onclick='myFunction("hello")'>hello</li>

正确的用法是:

$hint="<li onclick='myFunction(\"$word\")'>" . $word . "</li>";
于 2013-03-19T13:35:01.993 回答
1

改变

$hint="<li onclick='myFunction($word)'>" . $word . "</li>";

$hint="<li onclick='myFunction(\"$word\")'>" . $word . "</li>";

\将转义您的参数,并将$word替换为其内容

于 2013-03-19T13:35:19.590 回答