php - 如何在表单中提交div

标签 php javascript html ckeditor

我正在使用 ckeditor 来编辑屏幕上看到的文本。该信息从数据库中获取并写入 div 元素中的屏幕,并且可以通过双击来编辑信息。但是,编辑后我无法获取编辑后的信息。这是我的代码,我尝试添加一个包含 div 元素的表单,但它不起作用。

<form  method="post">
                            <p>
                                Double-click any of the following <code>&lt;div&gt;</code> elements to transform them into
                                editor instances.</p>

                            <?php 
                                $makeleSql = 'SELECT * FROM makale';
                                $makaleRs = $con->func_query($makeleSql);
                                while ($makaleRow = mysql_fetch_array($makaleRs)) {
                                ?>
                                    <div class = "editable" id = <?php echo "content".$makaleRow['id'];?> style="display:none">
                                    <?php
                                        $contentSql = 'SELECT * FROM content WHERE makale_id ='.$makaleRow['id'];
                                        $contentRs = $con->func_query($contentSql);
                                        while ($contentRow = mysql_fetch_array($contentRs)) {
                                            echo $contentRow['icerik'].$makaleRow['id'];
                                        }
                                    ?>
                                    </div>

                            <?php } 
                            ?>
                            <button type="submit" value="Submit" onclick="getDiv();"/>

                        </form>

我应该怎么做才能获取div元素中的信息?此外,我正在使用这个例子。 http://nightly.ckeditor.com/7484/_samples/divreplace.html

谢谢。

最佳答案

要保存表单数据,您需要将信息存储在输入/选择/文本区域中。 div 和其他非 form 的元素不会被存储。

您必须将数据存储在隐藏字段中:

<form  method="post">
    <p>
        Double-click any of the following <code>&lt;div&gt;</code> elements to transform them into
        editor instances.</p>

    <?php 
        $makeleSql = 'SELECT * FROM makale';
        $makaleRs = $con->func_query($makeleSql);
        while ($makaleRow = mysql_fetch_array($makaleRs)) {
        ?>
            <div class="editable" id="<?php echo "content".$makaleRow['id'];?>">
            <?php
                $contentSql = 'SELECT * FROM content WHERE makale_id ='.$makaleRow['id'];
                $contentRs = $con->func_query($contentSql);
                while ($contentRow = mysql_fetch_array($contentRs)) {
                    echo $contentRow['icerik'].$makaleRow['id'];
                    // store original text
                    echo '<input type="hidden" name="'.$makaleRow['id'].'" value="'.htmlspecialchars($contentRow['icerik'].$makaleRow['id']).'">;
                }
            ?>
            </div>

    <?php } 
    ?>
    <button type="submit" value="Submit" onclick="getDiv(this);"/>

</form>
<script>
var getDiv = function(btn) {
  for(var el in btn.form.elements) {
    var d = document.getElementById(btn.form.elements[el].name);
    btn.form.elements[el].value = d.innerHTML;
  }
  return true;
}
</script>

关于php - 如何在表单中提交div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10578960/

相关文章:

javascript - Lodash groupby 对象并组合数组

css - 尝试在 CSS 中将 "figure"标记居中(不使用 Div)

html - 文本覆盖另一个文本,需要显示在下方

php - 如何限制数据库调用的随机数为随机数加五?

php - 为什么null可以写成反斜杠?

javascript - Linux NodeJS 全局 NPM 包 ":No such file or directory"

html - 使文本不超出页脚

php - 提出的用于文本标记的 nlp 算法

PHP 查询返回 null !不可能

javascript - 在 Bootstrap Tour 中禁用/隐藏 "End tour"按钮