首页 > 解决方案 > 在 onclick 调用中传递字符串参数

问题描述

大家好,我对这行 php 代码有重大问题,我试图通过单击该 div 将 php 变量的名称(该 div 独有)传递给 javascript 函数。但是我不断收到错误消息:“参数列表后未捕获的语法错误:缺少)”。这是代码:

                while ($row = mysqli_fetch_assoc($result)){
                    $classname = $row["classname"];
                    $classcode = $row["corsecode"];
                    $color = $row["Color"];
                    echo '<div class="classsec" onclick="newpage('.$classname.')"> <p class="p3" style="  text-decoration: underline wavy '.$color.';">'.$classcode.'</p></div>';
                }
            }
            ?>

提前致谢!!

标签: javascriptphphtmlmysql

解决方案


如果 的值$classname将包含各种字符而不仅仅是数字,那么在通过 onClick 事件的 JS 函数传递值时,您需要将值包装在 escaped 中。否则,这将产生您提到的错误

[错误:“参数列表后未捕获的语法错误:缺少)”]

    while ($row = mysqli_fetch_assoc($result)){
                $classname = $row["classname"];
                $classcode = $row["corsecode"];
                $color = $row["Color"];
                echo '<div class="classsec" onclick="newpage(\''.$classname.'\')"> <p class="p3" style="  text-decoration: underline wavy '.$color.';">'.$classcode.'</p></div>';
            }
        }
        ?>

推荐阅读