代码编辑器codemirror 获取值 赋值【文章最后有我实际操作代码 修改回显 并保存】

首先引入这两个css

<link href="../../css/plugins/codemirror/codemirror.css" rel="stylesheet">
<link href="../../css/plugins/codemirror/ambiance.css" rel="stylesheet">

然后页面中定义一个textarea

<textarea id="scriptDesc" name="scriptDesc"></textarea>

然后添加脚本

<!-- 	脚本编辑器	开始 -->
	<script src="../../js/plugins/codemirror/codemirror.js"></script>
	<script src="../../js/plugins/codemirror/mode/javascript/javascript.js"></script>
<!-- 	脚本编辑器	结束 -->

然后进行设置【注意:id是 text area得id】  创建完这个对象就可以使用 editor.getValue() editor.setValue()进行取值 赋值操作了【文章最后有 我操作的页面】

var editor = CodeMirror.fromTextArea(document
				.getElementById("scriptDesc"), {
			lineNumbers : true,
			matchBrackets : true,
			styleActiveLine : true
		});

下面是实现效果 

 

下面是我一个修改页面

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>DBAAS</title>

    <link rel="shortcut icon" href="favicon.ico"> 
    <link href="../../css/bootstrap.min.css?v=3.3.6" rel="stylesheet">
    <link href="../../css/font-awesome.css?v=4.4.0" rel="stylesheet">
    <link href="../../css/animate.css" rel="stylesheet">
    <link href="../../css/style.css?v=4.1.0" rel="stylesheet">
  	<link href="../../plugins/layui/css/layui.css" rel="stylesheet">
  	<link href="../../css/plugins/codemirror/codemirror.css" rel="stylesheet">
	<link href="../../css/plugins/codemirror/ambiance.css" rel="stylesheet">
</head>

<body>
     <div class="col-sm-12">
          <form class="form-horizontal m-t" id="scriptForm" method="post" action="">
          	 <input type="hidden" id="id" name="id"/>
          	 <div class="form-group">
                  <label class="col-sm-3 control-label">脚本名称:</label>
                  <div class="col-sm-8">
                      <input id="scriptName" name="scriptName" type="text" class="form-control">
                  </div>
              </div>
              <div class="form-group">
				<label class="col-sm-3 control-label">脚本代码:</label>
				<div class="col-sm-8">
					<textarea id="scriptDesc" name="scriptDesc"></textarea>
				</div>
			  </div>
              <div class="hr-line-dashed"></div>
              <div class="form-group">
                  <div class="col-sm-4 col-sm-offset-3">
                      <button class="btn btn-primary" type="button" id="save">保存</button>
                      <button class="btn btn-white" type="button" id="cancel">取消</button>
                  </div>
              </div>
          </form>
      </div>

    <script src="../../js/jquery.min.js?v=2.1.4"></script>
    <script src="../../js/bootstrap.min.js?v=3.3.6"></script>
    <script src="../../js/content.js?v=1.0.0"></script>
    <script src="../../js/plugins/validate/jquery.validate.min.js"></script>
    <script src="../../js/plugins/validate/messages_zh.min.js"></script>
    <script src="../../js/demo/form-validate-demo.js"></script>
	<script src="../../plugins/layer/2.1/layer.js"></script>
	<script src="../../plugins/layui/layui.js"></script>
	<!-- 	脚本编辑器	开始 -->
	<script src="../../js/plugins/codemirror/codemirror.js"></script>
	<script src="../../js/plugins/codemirror/mode/javascript/javascript.js"></script>
	<!-- 	脚本编辑器	结束 -->
	
	<!--编写自己的脚本  -->
	<script type="text/javascript">
		var scriptDesc ;
		
		var editor = CodeMirror.fromTextArea(document
				.getElementById("scriptDesc"), {
			lineNumbers : true,
			matchBrackets : true,
			styleActiveLine : true
		});
		$(function(){
			//表单回显数据
		    var data = JSON.parse(window.localStorage.getItem("data"));
		    $("#id").val(data.id);
		    window.localStorage.clear();
		    
			var id = data.id;
		   $.ajax({ 
		        url : "/script/selectScript", // 请求url
		        type : "get", // 提交方式
		        dataType : "json", // 数据类型
		        data :{
		        	id:id
		        },
		        success : function(res) { // 提交成功的回调函数
		        	editor.setValue(res.data.scriptDesc);
		        	$("#scriptName").val(res.data.scriptName);
		        },
		        error: function(XMLHttpRequest, textStatus, errorThrown) {
					alert(textStatus);
		        }
		    });  
		    
		})
		
		$("#cancel").click(function(){
	    		var index = parent.layer.getFrameIndex(window.name);
    			parent.layer.close(index);
	    	});
		
		/* 修改 */
		$("#save").click(function() {
			scriptDesc = editor.getValue();
			//校验表单数据
			var scriptName = $("#scriptName").val();
			var id = $("#id").val();
			
			if (scriptName == "") {
				layer.msg("脚本名称不能为空");
				return;
			}

			if (scriptDesc == "") {
				layer.msg("脚本代码不能为空");
				return;
			}

			var script = {
				scriptName: scriptName,
				scriptDesc: scriptDesc,
				id: id
			};
			
			//提交表单
			$.ajax({ 
		        url : "/script/save", // 请求url
		        type : "post", // 提交方式
		        dataType : "json", // 数据类型
		        data : script,// 参数序列化
		        success : function(res) { // 提交成功的回调函数
		        	if(res.code == 200){
		        		layer.alert("保存成功",{icon: 6},function(){
		        			var index = parent.layer.getFrameIndex(window.name);
		        			window.parent.location.reload();//刷新父页面
		        			parent.layer.close(index);
		        		})
		        		
		        	}else{
		        		layer.msg(res.message);
		        	}
		        },
		        error: function(XMLHttpRequest, textStatus, errorThrown) {
					alert(textStatus);
		        }
		    });
    	});  
		
		
	</script>
</body>
</html>

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 以下是 VueUeditorWrap 富文本编辑器的文本回显代码: ```html <!-- 在模板中使用 v-model 双向绑定富文本编辑器的内容 --> <vue-ueditor-wrap v-model="content"></vue-ueditor-wrap> <!-- 在需要回显富文本的地方,使用 v-html 渲染内容 --> <div v-html="content"></div> ``` 其中,`vue-ueditor-wrap` 是 VueUeditorWrap 组件的名称,`content` 是在 Vue 实例中定义的数据,用于双向绑定富文本编辑器的内容。在需要回显富文本的地方,使用 `v-html` 渲染 `content` 数据即可。 ### 回答2: VueUeditorWrap是一个基于Vue.js的富文本编辑器组件,用于在页面上显示富文本内容。其文本回显代码如下: ```vue <template> <div> <vue-ueditor-wrap id="editor" :content="content"></vue-ueditor-wrap> <div v-html="content"></div> </div> </template> <script> import VueUeditorWrap from 'vue-ueditor-wrap' export default { components: { VueUeditorWrap }, data() { return { content: '<p>这是富文本编辑器的文本内容。</p>' } } } </script> ``` 首先,在template中使用`vue-ueditor-wrap`组件,并通过`:content`属性将要回显的文本内容传递给组件。在data中,设置了`content`的初始值为文本的HTML代码。通过`v-html`指令,将`content`的值渲染为HTML内容,实现文本的回显。 以上代码以静态的方式展示了VueUeditorWrap富文本编辑器的文本回显功能,可以根据具体需求进行适当修改和调整。 ### 回答3: VueUeditorWrap是一个基于Vue.js的富文本编辑器组件,用于用户输入和处理富文本内容。 要实现文本回显,需要将用户输入的富文本内容保存起来,并在需要回显的时候将其渲染到页面上。 首先,我们需要在Vue组件中引入VueUeditorWrap组件,并在data中声明一个变量用于保存富文本内容: ```javascript import VueUeditorWrap from 'vue-ueditor-wrap'; export default { components: { VueUeditorWrap }, data() { return { content: '' // 用于保存富文本内容的变量 } }, methods: { // 处理保存富文本内容的方法 handleSaveContent(content) { this.content = content; } } } ``` 然后,在模板中使用VueUeditorWrap组件,将保存富文本内容的方法传递给组件的update方法: ```html <vue-ueditor-wrap ref="editor" @update="handleSaveContent" ></vue-ueditor-wrap> ``` 接下来,我们可以在需要回显文本的地方,使用`v-html`指令来将保存的富文本内容渲染出来: ```html <div v-html="content"></div> ``` 这样,当用户输入富文本内容后,会通过`handleSaveContent`方法保存在`content`变量中。然后,在需要回显文本的地方,通过`v-html`指令将`content`变量中的内容渲染到页面上,实现文本回显。 以上就是使用VueUeditorWrap富文本编辑器实现文本回显代码片段。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值