我已经尝试过在Stackoverflow中看到的所有方法,但是我遇到了错误。
我试图将php变量值传递给javascript函数,我试图做两种方法:
echo '<td><a href="#" onclick="delete('.$contact['idContact'].')"> Delete </a></td>';
上面的这个方法认为idContact的值实际上是一个变量,所以他试图得到变量的值&#34; 105&#34; (idContact的值)
echo '<td><a href="#" onclick="delete("'.$contact['idContact'].'")"> Delete </a></td>';
这个方法给了我
Uncaught SyntaxError: Unexpected token }
这样做的正确方法是什么?提前谢谢。
这是一个显示我的问题的简单代码:
<html>
<head>
<script>
function eliminate(test)
{
alert(test);
}
</script>
</head>
<?
$test = "name";
echo '<a href="#" onclick="eliminate('.$test.')"> Delete </a>';
?>
</html>
答案 0 :(得分:1)
echo '<td><a href="#" onclick="delete(\''.$contact['idContact'].'\')"> Delete </a></td>';
请注意\'
将变量从php传递给js的更好方法是对json进行编码,这将处理引号和事物......
答案 1 :(得分:0)
避免混淆使用heredoc来实现此目标
$button=<<<HTML
<a href="#" onclick="eliminate('$test')"> Delete </a>
HTML;
echo $button
还要记住,如果你使用json作为参数确保正确地逃脱它们或它将无法正常工作
答案 2 :(得分:0)
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<script>
function eliminate(test){
alert(test);
}
<script>
</head>
<body>
<?php $test="name"; ?>
<a href="" onclick="eliminate('<?php echo $test; ?>')">delete</a>
</body>
</html>