Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript函数中传递php变量_Php_Parameter Passing - Fatal编程技术网

在javascript函数中传递php变量

在javascript函数中传递php变量,php,parameter-passing,Php,Parameter Passing,我不熟悉php和javscript。我正在从事问答系统的一些项目。我想将问题id发送到javascript函数 这是我的php代码 <?php if ($result->num_rows > 0) { $i = 1; while($row = $result->fetch_assoc()) { $p = $row["description"] ; echo '<div onclick="myOverF

我不熟悉php和javscript。我正在从事问答系统的一些项目。我想将问题id发送到javascript函数

这是我的php代码

<?php   
if ($result->num_rows > 0) 
{
    $i = 1;
    while($row = $result->fetch_assoc()) 
    {
        $p = $row["description"] ;
        echo '<div onclick="myOverFunction(<?= $p ?>)" align="left" class="j" role="group" aria-label="..."  >                                       <button id = "btnl<?=$i?>"  type="button" class="btn btn-default btn-xs btn-round" style="border-radius:10px;">';
        echo $i;
        echo '</button>';
        echo '<p class="question" style ="display:inline; ">';
        echo $p;
        echo '</p>';
        echo '</div>'; 
    }
}
?>

我的JavaScript函数是:

<script>
function myOverFunction(x) {
    document.getElementById("demo").innerHTML = x;
    document.getElementById("btnl"+x).style.backgroundColor = "#d9534f";
}
</script>

函数myOverFunction(x){
document.getElementById(“demo”).innerHTML=x;
document.getElementById(“btnl”+x).style.backgroundColor=“#d9534f”;
}

我的代码不工作。请帮助我…

您试图在echo中重新打开php标记,这是在破坏这一行:

echo '<div onclick="myOverFunction(<?= $p ?>)" align="left" class="j" role="group" aria-label="..."  > <button id = "btnl<?=$i?>"  type="button" class="btn btn-default btn-xs btn-round" style="border-radius:10px;">';
echo'您的问题是:

echo '<div onclick="myOverFunction(<?= $p ?>)"

注意:如果
$p
是字符串,则需要引号。引号内的引号需要转义

不起作用怎么办?你有错误吗?检查div的代码告诉你什么?我的javascript函数没有从php代码中获取值。请注意我的javascript函数没有从php代码中获取值。请注意我的javascript函数没有任何更改。我的javascript函数没有从php代码中获取值。请注意ittry
myOverFunction(\'.$p.\')
。如果
$p
是一个字符串,它需要引号。引号中的引号需要转义,直到myOverFunction(\'.$p.'\')不更改“demo”的innerHTML。您可以发布
echo'.$i.

”.$p.

”;*******javascrpit函数****函数myOverFunction(\'.$p'.\'){document.getElementById(“demo”).innerHTML=“$p”}
echo '<div onclick="myOverFunction(<?= $p ?>)"
echo '<div onclick="myOverFunction('. $p .')". 
 echo '<div onclick="myOverFunction(\''. $p .'\')" align="left" class="j" role="group" aria-label="..."  >                                       <button id = "btnl'.$i.'"  type="button" class="btn btn-default btn-xs btn-round" style="border-radius:10px;">';