主题: 求教在asp.net中如何后台取到使用了母版页的内容页中kindeditor的值 |
作者: hsw, 发布日期: 2012-08-09 11:22:30, 浏览数: 5177 |
KE.show({
id: document.getElementById('<%=contentMain.ClientID %>').id, imageUploadJson: '/tools/upload_json.ashx', fileManagerJson: '/tools/file_manager_json.ashx', allowFileManager: true });
可以在页面正常显示编辑器,后台赋值也可以赋值上去,但是保存时就是取不到值,一直都是初始赋值状态的值,在非母版页页面正常,但是挪到使用了母版页的内容页就取不到了
|
作者: lsw, 发布日期: 2012-12-22 18:50:49 |
这个问题已经有很长时间没人回答了。 在应用了模板页的Web页面确实取不到value值。不只是取不到值,在应用了模板页的Web页面的后台代码中根本找不到编辑器对象。
解决思路: 1、删除编辑器正文嵌入代码。即删除如下代码: <textarea name="content" style="width:700px;height:200px;visibility:hidden;">KindEditor</textarea> 2、创建一个<asp:TextBox>对象,把ID改成content,如下代码: <asp:TextBox ID="content" runat="server" TextMode="MultiLine"></asp:TextBox> 这里需要注意的是该对象运行后再页面的HTML代码中,它的名字并不是content。运行页面,在页面源码中找到该控件运行后的名字,如可能是ctl00$ContentPlaceHolder1$content。
3、把嵌入编辑器脚本的这一行中的控件名字修改成<asp:TextBox>对象运行后的名字。如: editor = K.create('textarea[name="content"]', { 修改成: editor = K.create('textarea[name="ctl00$ContentPlaceHolder1$content"]', {
4、按照上述方法修改后,就可在后台代码中用如下代码取到编辑器的value: this.Label1.Text = this.content.Text;
|
回复 |
作者: 安静燊, 发布日期: 2014-06-13 20:48:12 |
之前我也是和你同样的问题 下面是我的代码
<script charset="utf-8" src="../editor/kindeditor.js"></script>
... ... ... ... <textarea id="text" runat="server" style=" width:100%" cols="30" rows="20"></textarea>
我用了两层母版页,结果是能显示kindeditor并且textarea可以从数据库获取值并显示 但是在textarea中输入的值却不能保存 在非母版页中没有这个问题,后来网上搜索和几篇文章发现了解决方法:
KindEditor.ready(function (K) { afterblur是说失去焦点之后将kindeditor的值同步给textarea 加上这句之后我测试可以通过了 |
回复 |