保存时删除突出显示的html代码 - highlight_file()php

时间:2017-04-27 12:06:43

标签: php ajax file syntax-highlighting highlight

在我的应用程序中,我使用ajax将名为 test.php 的文件的内容显示到标识为fileContents的表中。我正在使用highlight_file()突出显示代码并且工作正常。我在页面中有一个“保存”按钮,用于将div内容保存回文件。

<script language="JavaScript">
$( document ).ready(function() {
   $.ajax({
       url: 'test_file.php',
       type: 'POST',
       data: {
          filePath: 'test.php'
       },
       success: function(data) {
            $('#fileContents').html(data);
       }
    });
});
function saveFileContents() {
    console.log($('#fileContentDiv').html());
}
</script>

<table id="fileContents">
</table>
<input type="button" value="Save" onclick="saveFileContents()">

test_file.php

<tr>
<td>
<div id="fileContentDiv" contenteditable="true">
<?php
echo highlight_file( $_POST['filePath'] );
?>
</td>
</tr>

test.php的

<?php 
echo "hai";
?> 

我尝试编辑div并在最后一行$i=0;添加一行新代码,当我点击“保存”按钮时,我得到了这样的控制台:

<code><span style="color: #000000">
<br><br>&lt;?php&nbsp;</span></code><div><code><span style="color: #000000">echo&nbsp;"hai";</span></code></div><div><code><span style="color: #000000">$i =0;</span></code></div><div><code><span style="color: #000000">?&gt;</span></code>&nbsp;</div>

我需要将php代码仅保存回文件(以及换行符)。我尝试使用$('#fileContent').text()。但它将内容保存在一行中。

任何人都可以帮我解决这个问题吗?提前谢谢。

0 个答案:

没有答案