ReferenceError:未定义电子

时间:2014-09-22 16:28:18

标签: javascript php syntax-error referenceerror

我在给定的SSCCE代码中收到以下错误:

Error: ReferenceError: electron is not defined
Source File: http://localhost/testingOne.php
Line: 1

虽然'electron'是一个字符串。那么为什么我会收到这个错误。我在electron尝试了接受的答案here并将proton"包裹起来,但这样做了:

Error: SyntaxError: syntax error
Source File: http://localhost/testingOne.php
Line: 1, Column: 12
Source Code:
clickButton(

代码:

<?php 

echo '<html><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <script>
        function clickButton(alp, bet) {
            alert(alp);
            alert(bet);
        }
    </script>
</head><body>';

$array = array('alpha'=>'electron', 'beta'=>'proton');

echo '<button type="button" onclick="clickButton('. $array['alpha'].','.$array['beta'] .')" >Click Me</button>';

echo '</body></html>';
?>

1 个答案:

答案 0 :(得分:2)

如果您要在创建的实际HTML上查看源代码,您会看到:

<button type="button" onclick="clickButton(electron,proton)" >Click Me</button>

您需要在输出值周围添加引号以将其转换为Javascript字符串文字:

echo '<button type="button" onclick="clickButton(\''. $array['alpha'].'\',\''.$array['beta'] .'\')" >Click Me</button>';

给予:

<button type="button" onclick="clickButton('electron','proton')" >Click Me</button>