如何将PHP字符串传递给Javascript函数调用?

时间:2015-02-16 18:32:10

标签: javascript php

我想简单地想把php字符串传递给java脚本函数这里是代码。我知道发送字符串到javascript函数有问题,但我怎么能解决它????如果我传递整数值然后它工作正常它显示问题 在传递字符串

echo "<td><a id='".$row['Patient_Id']."' onclick=changename(".$row['Patient_Id'].",".$row['age'].",".$row['Notes'].") >".$row["Patient_Name"]."</a></td></tr>";

这是java脚本功能

function changename(vlue,age,id)
{
 alert(id);
 var MyDiv1 = document.getElementById(vlue);
 document.getElementById('age').innerHTML=age;          
 var MyDiv2 = document.getElementById('pname');
 MyDiv2.innerHTML = MyDiv1.innerHTML;   //d     
 var MyDiv3 = document.getElementById('hidden');
 MyDiv3.value  =vlue;               
}

2 个答案:

答案 0 :(得分:2)

您的参数是字符串值,因此它们应该用引号括起来:

echo "<td><a id='".$row['Patient_Id']."' onclick=changename( '".$row['Patient_Id']."' , '".$row['age']."' , '".$row['Notes']."' ) >".$row["Patient_Name"]."</a></td></tr>";
//                                                           ^----------------------^ etc

目前,JavaScript将您的字符串视为标识符。如果您检查过控制台,则会看到相应的错误(假设未定义这些标识符)。

答案 1 :(得分:0)

你的onclick没有引用

echo "<td><a id='".$row['Patient_Id']."' onclick='changename(".$row['Patient_Id'].",".$row['age'].",".$row['Notes'].")' >".$row["Patient_Name"]."</a></td></tr>";
                                                 ^ //here                                                             ^ // and here