我正在尝试编写一个函数,当您单击按钮时将动态显示表单(在 div 内,其中将有几个实例,因此奇怪的“id”名称)。然后,它应该 POST 到一个单独的 PHP 文件。这是我到目前为止的代码:
function add_comment_url($table, $id) {
$html = '<div id="comment' . $id . '" name="comment_box" style="display: none">
<form action="cgi-bin/add_comment.php" method="post">
<textarea id="comment" name="comment"></textarea>
<input type="hidden" name="id" value="' . $id . '">
<input type="hidden" name="table" value="' . $table . '">
<input type="submit" name="submit" value="Submit Comment">
</form></div>
<input type="button" value="Add Comment" onclick="showComment();">
<script>
var id= ' . json_encode($id) . ';
showComment(id);
</script>';
return($html);
}
“添加评论”按钮显示正常,但我无法显示,当我单击该按钮时,Firefox 控制台显示“TypeError:div 为空”错误。
我猜我搞砸了 JS 变量分配,但我不知道如何修复它。有什么想法吗?
编辑 - 最终代码
我发现我做错了什么......我正在定义var
我不需要的时间!这是新功能,它有效:
function add_comment_url($table, $id) {
$html = '<div id="comment' . $id . '" name="comment_box" style="display: none">
<form action="cgi-bin/add_comment.php" method="post">
<textarea id="comment" name="comment"></textarea>
<input type="hidden" name="id" value="' . $id . '">
<input type="hidden" name="table" value="' . $table . '">
<input type="submit" name="submit" value="Submit Comment">
</form></div>
<input type="button" value="Add Comment" onclick="showComment(' . $id . ');">';
return($html);
}