我目前在我的ajax调用的'done'方法中有我的TinyMCE init语句,如下所示:
$(document).ready(function () {
$.ajax({
url: '/api/GameData/' + gameID,
method: 'GET',
dataType: 'json',
success: function (data) {
},
fail: function (jqXHR, textStatus) {
alert("Request failed: " + textStatus);
}
}).done(function (data) {
$("#gameEditor").val(data);
tinyMCE.init({
selector: 'div#gameEditor',
inline: true
});
});
});
function saveTinyMCE() {
var text = tinyMCE.get('gameEditor').getContent();
}
我有一个使用jquery ajax发布数据的保存功能。我在done函数之外定义了这个函数。
每次页面加载时,我都会在浏览器控制台的saveTinyMCE函数中的'var text ='行中收到此错误:
Uncaught TypeError: Cannot read property 'getContent' of null
我是否需要将此保存功能放在初始ajax调用的“完成”部分中?
谢谢!
答案 0 :(得分:1)
我认为你需要在ajax方法之外调用tinymce.init。 例: 写init函数:
$(document).ready(function () {
var self = this;
self.initTinyMCe (){
tinyMCE.init({
selector: 'div#gameEditor',
inline: true
});
}
$.ajax({
url: '/api/GameData/' + gameID,
method: 'GET',
dataType: 'json',
success: function (data) {
},
fail: function (jqXHR, textStatus) {
alert("Request failed: " + textStatus);
}
}).done(function (data) {
$("#gameEditor").val(data);
self.initTinyMCe();
});
});