Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery tinymce getcontent不工作_Jquery_Asp.net Mvc_Tinymce 4 - Fatal编程技术网

Jquery tinymce getcontent不工作

Jquery tinymce getcontent不工作,jquery,asp.net-mvc,tinymce-4,Jquery,Asp.net Mvc,Tinymce 4,它不起作用 这是我的密码。你可以看到我尝试过的不同事物的不同评论。我有 警报('end') 最后只是测试代码是否正常工作。目前,除非我注释掉与tinymce相关的任何内容,否则它不是初始值设定项。这些函数位于document ready的内部 为什么tinymce无法获取内容 tinymce.get('content').getContent $(文档).ready(函数(){ tinymce.init({ 选择器:“#mytextarea”, 内联:对 }); //$('input').

它不起作用

这是我的密码。你可以看到我尝试过的不同事物的不同评论。我有

警报('end')

最后只是测试代码是否正常工作。目前,除非我注释掉与tinymce相关的任何内容,否则它不是初始值设定项。这些函数位于document ready的内部

为什么tinymce无法获取内容

tinymce.get('content').getContent 

$(文档).ready(函数(){
tinymce.init({
选择器:“#mytextarea”,
内联:对
});
//$('input').keyup(函数(){
////警报(“键控”);
//$('[name=“'+$(this.attr('name')+'“]')).val($(this.val());
//});        
//$('.artBodyText').keyup(函数(){
//警报(“键控”);
//$('[name=“'+$(this.attr('name')+'“]')).val($(this.val());
//});
//$('#mytextarea').keyup(函数(){
//警报(“键控”);
//$('[name=“'+$(this.attr('name')+'“]')).val($(this.val());
//});
//var x=tinymce.get('#mytextarea').getContent();
//变量y=$('mytextarea').tinymce().getContent();
警报(tinymce.get('mytextarea').getContent());
警报(“结束”);
});

这与firefox有关还是与我加载编辑器的方式有关?注意-编辑器可以很好地处理我的表单,用于提交和发布数据。

您试图在编辑器完全初始化之前调用
getContent()
init()
方法是异步的,我怀疑您的警报是在编辑器完全初始化之前运行的

确保等待编辑器完全初始化的最简单方法是依赖编辑器提供的init事件:

<script>
    $(document).ready(function () {
        tinymce.init({
            selector: '#mytextarea',
            inline: true
        });
        //$('input').keyup(function () {
        //    //alert("keyed");
        //    $('[name="' + $(this).attr('name') + '"]').val($(this).val());
        //});        
        //$('.artBodyText').keyup(function () {
        //    alert("keyed");
        //    $('[name="' + $(this).attr('name') + '"]').val($(this).val());
        //});
        //$('#mytextarea').keyup(function () {
        //    alert("keyed");
        //    $('[name="' + $(this).attr('name') + '"]').val($(this).val());
        //});
      // var x = tinymce.get('#mytextarea').getContent();
        //var y = $('mytextarea').tinymce().getContent();
        alert(tinymce.get('mytextarea').getContent());
        alert("end");
    });
</script>

你说得对。那么,如果我需要告诉另一个函数,比如:$('.nav tabs a').on('show.bs.tab',function(event){//event},我该如何使用GetContent呢;等待,直到初始化程序完成才触发。你能从TinyMCE中的init函数触发另一个函数吗?我不确定。这是一个选项卡视图,当一个选项卡加载时,我希望它从另一个选项卡中的数据“设置内容”,所以我几乎需要两个触发器。我想我可以在初始化程序的末尾设置一个开关,然后检查是否在我运行tab change触发器之前,开关被设置为ON,但是看起来好像有很多不必要的代码——也许你可以在编辑器完全初始化之前禁用这些选项卡?
tinymce.init({
  selector: '#myTextarea',
  ...
  ...
  setup: function (editor) {
    editor.on('init', function () {
      // This is a common function for loading initial content into TinyMCE 
      editor.setContent('Using the on init stuff!');
      // You could run your alert here as you know the editor in initialized
      alert(tinymce.get('mytextarea').getContent());
    });
  }
});