PHP初学者 关于PHP变量传值给JS的问题

我现在有一个message.php
当中有一段这样的一段代码
<?php echo "<a onclick=\"testMessageBox(event);\" class=\"message_title\" href=\"#\">".$title."</a>"?>
假设存在$title="字符串";
然后还有一个message.js ,message.php是调用这个页面的。
message.js里有这样一段函数
function testMessageBox(ev)
{
var objPos = mousePosition(ev);
messContent="<div style='padding:20px 0 20px 0;text-align:center'>消息正文</div>";
showMessageBox("窗口",messContent,objPos,350);
}

然后我希望把message.js里的"窗口"给替换成message.PHP里的变量$title
于是我做如下修改,在message.js页面,改成testMessageBox(ev,x)
showMessageBox(x,messContent,objPos,350); php页面里onclick=\"testMessageBox(event,$str);

我发现当$是数值时可以成功传递数值,但是$为字符串时,却无法提交,因为浏览器在解释时变成(event,字符串);了 会显示字符串是变量为定义。

请问有方法可以把php里的字符串传给js页面吗。是不是因为js是客户端,所以本来就没这个方法呢?我不会xml和ajax
如果只能用ajax做,能不能摆脱高手给我写个例子呢,谢谢!!

然后还有一个message.js

$str加单引号改为'$str'如下:
<?php echo "<a onclick=\"testMessageBox(event,'$str');\" class=\"message_title\" href=\"#\">".$title."</a>"?>
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-29
<?php
............
?>
<a onclick="testMessageBox(event,<?php echo $str ?>);" class="message_title" href="#"><?php echo $title ?></a>
<?php
............
?>
怎么喜欢在PHP里面输出HTML,自找麻烦?这样不就行了?
第2个回答  2011-04-29
试一下

<?php echo "<a onclick=\"testMessageBox(event, '".$title."');\" class=\"message_title\" href=\"#\">".$title."</a>"?>

不行的话试一下

<?php echo "<a onclick=\"testMessageBox(event, this.innerHTML);\" class=\"message_title\" href=\"#\">".$title."</a>"?>
第3个回答  2011-04-29
<?php
echo "<a onclick=testMessageBox(event,'".$str."'); class=message_title href=#>".$title."</a>"
?>
第4个回答  2011-04-29
onclick=\"testMessageBox(event,\"".$str."\");\"
相似回答
大家正在搜