加载jqGrid后,使用html()设置内容
我的页面中有jqGrid和TinyMCE编辑器 加载网格后,我将选择第一行。 在加载jqGrid后,使用html()设置内容,jqgrid,tinymce,Jqgrid,Tinymce,我的页面中有jqGrid和TinyMCE编辑器 加载网格后,我将选择第一行。 在onsetow:函数中,我使用$('#id').html(value#)设置编辑器值。该值是一个行单元格内的值 我的问题是,当为第一行选择加载页面时,我只能在编辑器中看到值1秒钟,然后它消失了。(当我在单击时选择行,我可以看到值,即使我刷新页面,我也可以看到。它不工作,只是第一次。) 这是我的代码: 蒂尼姆斯: $('#tinymc_id.tinymce').tinymce({ theme : "adv
onsetow:
函数中,我使用$('#id').html(value#)设置编辑器值代码>。该值是一个行单元格内的值
我的问题是,当为第一行选择加载页面时,我只能在编辑器中看到值1秒钟,然后它消失了。(当我在单击时选择行,我可以看到值,即使我刷新页面,我也可以看到。它不工作,只是第一次。)
这是我的代码:
蒂尼姆斯:
$('#tinymc_id.tinymce').tinymce({
theme : "advanced",
theme_advanced_buttons1 : "cut,copy,paste,|,bold,italic,underline,|,undo,redo,|,justifyleft,justifycenter,justifyright,justifyfull,|" ,
theme_advanced_buttons2 : "formatselect,fontselect,fontsizeselect,|,forecolor,backcolor,|",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
plugins : "paste"
init_instance_callback : myCustomInitInstance
});
function myCustomInitInstance(ed)
{
var s = ed.settings;
var realID = ed.id;
tinymce.dom.Event.add(ed.getWin(), 'focus', function(e) {
if($(realID)) {
}
});
tinymce.dom.Event.add(ed.getWin(), 'blur', function(e) {
if($(realID)) {
}
});
}
jqGrid代码:
onSelectRow: function(id)
{
save_row(lastSel);
grid.editRow(id,false,'','','','','','','');
jQuery ('#' + id + '_cell1').focus();
lastSel=id;
var _text = grid.getCell(id , "cell2");
$('#tinymc_id').html(_text);
},
loadComplete:function()
{
set_selected_row(1);
}
有什么问题?如何解决此问题?这里的问题是您可能使用html()设置textareas内容。但是编辑器位于iframe内部(在init上显示textareas内容)。要更好地设置编辑器内容,请使用
tinymce.get(editor_id).setContent(html_content);
如果它能工作,试试这个@Thariama:thank's,但它对我不起作用,相反,我在tinymce init中添加了oninit:,并命名为$('tinymc_id').html(_text);里面。unsing html()是否有效?根据“#id”所包含的内容,使用html并没有错,但tinymce API提供了一些标准方法-使用这些方法总是安全的,这就是我的想法。如果您的页面上只有一个编辑器,则可以使用以下编辑器使其正常工作:tinymce.editors[0].setContent(value_)@塔里亚马:所以在这种情况下使用它是不好的?我不明白。如果我的页面中有两个编辑器错误呢?那么您需要使用编辑器id:tinymce.get(editor\u id).setContent(html\u content);。这是因为tinymce.editors将页面上的所有编辑器保存在一个数组中;使用tinymce.editors[0]可能会选择错误的编辑器
$.each($('textarea'),function() {
if($(this).val() != "") {
var value = $(this).val();
$(this).html(value)
}
});