KindEditor获取文本框的值

在KindEditor中遇到一个问题,当在编辑器内插入一个input输入框并修改其高度、宽度及值后,保存时input的value保持初始值,onclick事件也无法传递到服务器。尝试使用editor.sync()进行数据同步未果。查阅资料了解到confirm, alert, prompt的区别,并对问题持续探索解决。" 131040385,18870706,Python大游戏开发:ChatGPT助力创新,"['Python', '游戏开发', 'pygame', '独立游戏', '教育']

问题:

在KindEditor中插入input输入框,更改其height,width,value后,再次获取html代码,height和width已被更新,但是value还是初始值。而且,onclick()方法的代码没有传送到服务器当中。


问题代码"hello.js":

KindEditor.plugin_new('hello', function(K) {
        var editor = this, name = 'hello';
        // 点击图标时执行

        editor.clickToolbar(name, function() {
        	var plugin_id = name + "#kedit#" + new Date().getTime();
        	var html = '<input id=' + plugin_id +' type=text style=width:100px;height:20px value=100>';
          editor.insertHtml(html);
        });
}, function(K, e){
		var html= ['<div style="padding:20px;">',
							 '控件id:' + e.target.id + '<br>',
							 '<label>宽: <input type=text id=width /></label><br>',
							 '<label>高: <input type=text id=height /></label><br>',
							 '<label>值: <input type=text id=value /></label><br>',
							 '<label>onclick: <textarea id=t style=width:300px;height:200px></textarea></label><br>',
		           '</div>'].join('');
		var dialog = K.dialog({
						width : 500,
						height: 400,
						title : '编辑窗口',
						body : html,
						closeBtn : {
							name : '关闭',
							click : function(e) {
								dialog.remove();
							}
						},
						yesBtn : {
							name : '确定',
							click : function() {
								var e_target = window.frames[0].document.getElementById(e.target.id);
								var input_width = document.getElementById("width").value;							
								var input_height = document.getElementById("height").value;								
								var input_value = document.getElementById("value").value;		
								var input_t = document.getElementById("t").value;				
								if(input_width != "" && input_height != "" && input_value != ""){
									<span style="color:#33CCFF;"><span style="color:#993399;">e_target.style.width = input_width;
									e_target.style.height = input_height;
									e_target.style.value = input_value;
									var fn = new Function(input_t);
									e_target.onclick = fn;	</span>		</span>						
									dialog.remove();	
								}															
								else{
									alert("属性值不能为空");	
								}									
							}
						},
						noBtn : {
							name : '取消',
							click : function() {
								dialog.remove();
							}
						}
					});		
});


修改代码:

            e_target.style.width = input_width;
	    e_target.style.height = input_height;
	    <span style="color:#3366FF;">e_target.setAttribute("value", input_value);
	    e_target.setAttribute("onclick", input_t);</span>	

修改后效果:




意外收获:confirm,alert,prompt的区别

http://developer.51cto.com/art/200906/129845.htm


心得:

尝试使用editor.sync()同步数据,但是没有成功。希望日后找到问题原因。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值