所见即所得的文字编辑器

时间:2019-09-19 21:31:34

标签: javascript php

对不起,我不懂英语 Short'll尝试解释短片

我一点都不懂Javascript,php很少

我正在尝试使用“带有jQuery和Bootstrap的自适应WYSIWYG文本编辑器-LineControl编辑器”

从这样的数据库中获取数据没问题

$(document).ready(function() {
            $("#txtEditor").Editor();
            $("#txtEditor").Editor("setText", "<?php echo $my_database?>");
            });

<textarea id="txtEditor" name="message"></textarea > 

问题是:我无法提交,回显$ _POST ['message'];

第二个问题: 编辑器中的图像代码不发送ajax 示例代码:<div>Hello World</div><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAR0AAABMCAYAAABQzSrQI...="> 发送“ Hello World”文本没问题,但不发送图像代码

var message = $("#txtEditor").Editor("getText");
$.ajax({
  type: "POST",
  url: url,
  data: message,
success: function(dataResult){
}
});

您可以帮助解决这两个问题吗? 从现在开始谢谢你

2 个答案:

答案 0 :(得分:1)

通常,这些WYSIWYG编辑器将​​<textarea>替换为div和其他标记,这使其不再是表单字段。您将需要使用javascript来获取提交时的编辑器内容,然后通过ajax提交它或将其添加到另一个表单字段中:

<textarea id="txtEditor" name="txtEditor"></textarea>
<textarea id="txtEditorContent" name="txtEditorContent" style="display:none;"></textarea>
<input type="submit" value="Submit">

<script>
$("input:submit").click(function(){
    $('#txtEditorContent').text($('#txtEditor').Editor("getText"));
});
</script>

答案 1 :(得分:0)

感谢您的回复 是的,它有效

它用于PHP并写入文本数据库并重新排列

<textarea id="txtEditor"></textarea>
<textarea id="txtEditorContent" name="txtEditorContent" style="display:none;"></textarea>

<script language="javascript" type="text/javascript">

  $(document).ready( function() {
    $("#txtEditor").Editor();
      $("#txtEditor").Editor("setText", "<?php echo addslashes($my_database); ?>");  // From the database into the editor
        $("input:submit").click(function(){
          $('#txtEditorContent').text($('#txtEditor').Editor("getText")); // PHP, echo $_POST['txtEditorContent']
        });

   });
</script>

使用此ajax提交

            $(document).ready(function() {
            $("#txtEditor").Editor();
            $("#txtEditor").Editor("setText", "Hello World");
            }); 

var message = window.btoa($("#txtEditor").Editor("getText"));
// Javascript decode


$.post( "test.php", { message: message })
  .done(function( data ) {
    alert( "Data Loaded: " + data );
  });


<textarea id="txtEditor"></textarea>

test.php php编码

$message = base64_decode($_POST['message']);
OR 
Javascript encode
var message = window.atob(message);

对于像我这样的初学者,需要细节

再次感谢大家