我有两个页面叫做openclosediv.php和content.php。在openclosediv.php页面中,我有一个记录列表和一个按钮(显示/隐藏div按钮),它将content.php放入openclosediv.php中。在content.php页面中,每当我点击按钮时,我都会有一个ckeditor,上面说过,第一次ckeditor出现,但是第一次按下按钮后ckeditor没有出现。
以下是在openclosediv.php中显示/隐藏div的代码:
function ShowHideDiv(divid)
{
var block=document.getElementById(divid).style.display;
if(block=="none")
{
document.getElementById(divid).style.display="block";
}
else
{
document.getElementById(divid).style.display="none";
}
var data="divid="+divid;
jQuery('#'+divid).showLoading();
$.ajax({
type: "POST",
url: "content.php",
data: data,
error: function(){
alert('Error while loading!');
},
success: function(data){
jQuery('#'+divid).hideLoading();
$('#'+divid).html(data);
}
});
}
在这里我如何在content.php中创建ckeditor:
$ckeditor = new CKEditor();
$ckeditor->basePath = 'ckeditor/' ;
CKFinder::SetupCKEditor( $ckeditor, 'ckfinder/' ) ;
$config['height'] = '300';
$config['width'] = '700';
$initialValue = "";
$ckeditor->editor("somename", $initialValue, $config);
提前致谢。
答案 0 :(得分:1)
由于您使用的是jQuery,因此您可以使用.toggle()
方法而不是手动显示和隐藏:
function ShowHideDiv(divid)
{
$('#' + divid).toggle();
// Do ajax
}
.toggle()
代码应替换此部分:
var block=document.getElementById(divid).style.display;
if(block=="none")
{
document.getElementById(divid).style.display="block";
}
else
{
document.getElementById(divid).style.display="none";
}