如何获得CodeMirror文本编辑器的值
时间:2020-02-23 14:45:52 来源:igfitidea点击:
在本教程中,我们将学习获得CodeMirror编辑器中的值。
下载
CodeMirror:http://codemirror.net/
jQuery的:https://jquery.com/
可选的:
SublimeText:https://www.sublimetext.com/
原子:https://atom.io/
Brackets:http://brackets.io/
eclipse:https://eclipse.org/
适用于Windows的XAMPP:https://www.apachefriends.org/download.html
适用于Mac的MAMP:https://www.mamp.info/en/
步骤
在codemirror项目文件夹中创建form.php。
在form.php文件中包括必要的文件。
<!DOCTYPE html> <html> <head> <title>CodeMirror</title> <link rel="stylesheet" type="text/css" href="plugin/codemirror/lib/codemirror.css"> </head> <body> <!-- javascript --> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="plugin/codemirror/lib/codemirror.js"></script> <script type="text/javascript" src="js/default.js"></script> </body> </html>
建立表单
<form id="preview-form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <textarea class="codemirror-textarea" name="preview-form-comment" id="preview-form-comment"><?php echo $comment; ?></textarea> <br> <input type="submit" name="preview-form-submit" id="preview-form-submit" value="Submit"> </form>
现在我们需要编写一些php代码来处理提交的表单数据。
<?php
//initially
$comment = null;
//if the form is submitted
if($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['preview-form-comment'])) {
$comment = $_POST['preview-form-comment'];
}
?>
至此,我们的form.php文件将包含以下代码。
<?php
//initially
$comment = null;
//if the form is submitted
if($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['preview-form-comment'])) {
$comment = $_POST['preview-form-comment'];
}
?>
<!DOCTYPE html>
<html>
<head>
<title>CodeMirror - Form</title>
<link rel="stylesheet" type="text/css" href="plugin/codemirror/lib/codemirror.css">
</head>
<body>
<form id="preview-form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<textarea class="codemirror-textarea" name="preview-form-comment" id="preview-form-comment"><?php echo $comment; ?></textarea>
<br>
<input type="submit" name="preview-form-submit" id="preview-form-submit" value="Submit">
</form>
<div id="preview-comment"><?php echo $comment; ?></div>
<!-- javascript -->
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="plugin/codemirror/lib/codemirror.js"></script>
<script type="text/javascript" src="js/default.js"></script>
</body>
</html>
</pre></code>
<p>To get the value of the CodeMirror text editor we need to write some javascript code in the default.js file.
</p>
<pre><code>
$(document).ready(function(){
//code here...
var code = $(".codemirror-textarea")[0];
var editor = CodeMirror.fromTextArea(code, {
lineNumbers : true
});
//when form submitted
$("#preview-form").submit(function(e){
var value = editor.getValue();
if(value.length == 0) {
alert("Missing comment!");
}
});
});
因此,在上面的javascript代码中,我们正在检查是否提交了"预览表单"表单,然后使用getValue()函数获取CodeMirror文本编辑器的值。
然后我们检查用户是否在编辑器中输入了任何文本。

