У меня другая проблема с FCKEditor в ASP.NET MVC. Пожалуйста, ознакомьтесь с кодом ниже
<script type="text/javascript">
var sBasePath = 'http://localhost:2170/Content/fckeditor/';
var oFCKeditor = new FCKeditor('FCKeditor1');
oFCKeditor.BasePath = sBasePath;
oFCKeditor.Height = 300;
oFCKeditor.Create();
var timer;
function ShowContent() {
var oEditor = FCKeditorAPI.GetInstance('FCKeditor1');
if (oEditor != undefined) {
var ContentText = '<%= Model.Article.ContentText %>';
oEditor.SetHTML(ContentText)
clearTimeout(timer);
}
else {
timer = setTimeout("ShowContent()", 1000);
}
}
timer = setTimeout("ShowContent()", 1000);
</script>
Как вы можете видеть, первая проблема заключается в том, что мне нужно жестко закодировать значение BasePath, если я установлю для BasePath относительный путь, такой как Content / fckeditor, то он будет искать FCKEditor в http://localhost:2170/Article/Content/fckeditor, что приведет до 404 ошибка. Несмотря на то, что он все равно работает с абсолютным путем, я должен изменить этот путь при развертывании на рабочий сервер.
Вторая проблема - это привязка значения к fckeditor, так как fckeditor доступен только после полной загрузки страницы, я не могу напрямую использовать метод SetHTML при создании fckeditor, потому что на данный момент объект oEditor не определен. Вместо этого я должен использовать функцию setTimeout, чтобы повторно проверять объект oEditor, пока он не станет доступен, а затем привязывать к нему содержимое.
Я не знаю, есть ли другие способы решить две проблемы выше?