Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.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
Javascript 将文本追加到变量始终会产生相同的顺序_Javascript - Fatal编程技术网

Javascript 将文本追加到变量始终会产生相同的顺序

Javascript 将文本追加到变量始终会产生相同的顺序,javascript,Javascript,我有一个multiselect,每次发生更改事件时,我都希望所选项目div的值附加到文本体。我使用forEach循环来运行ajax请求,每次响应都被设置为文本体(在本例中是textarea)。如果我按顺序选择第1节然后选择第2节或者第2节然后选择第1节这两个部分的顺序总是相同的,这似乎并不重要。(第2节位于第1节顶部) 在这种情况下,值是字母的一部分。所以它总是写在介绍信的开头,这显然与我想要的相反 我原以为问题出在我用来设置textarea值的命令上,但我通过代码进行了更改,只将节添加到变量中

我有一个multiselect,每次发生更改事件时,我都希望所选项目div的值附加到文本体。我使用forEach循环来运行ajax请求,每次响应都被设置为文本体(在本例中是textarea)。如果我按顺序选择
第1节
然后选择
第2节
或者
第2节
然后选择
第1节
这两个部分的顺序总是相同的,这似乎并不重要。(第2节位于第1节顶部)

在这种情况下,值是字母的一部分。所以它总是写在介绍信的开头,这显然与我想要的相反

我原以为问题出在我用来设置textarea值的命令上,但我通过代码进行了更改,只将节添加到变量中,如
body+=section
(在forEach中)和
console.log
it。同样的事情也会发生

这是我的密码:

$('#my-select').change(function() {

    //empties the textarea 
    tinymce.get('elm1').setContent("");

    //Array of the selected values
    let codes = $('#my-select').val();

    codes.forEach(function(code) {
      
      let data = {
        action: 'getSectionByCode',
        code: code
      }
      //returns an object
      let sections = $.parseJSON($.ajax({
          url:  '/modules/ajax/ajax_handler.php',
          type: "POST",
          data:data,
          async: false
      }).responseText);

      //Set the contents of the editor to be section.body
      tinymce.get("elm1").execCommand('mceInsertContent', false, sections.body);
      //Alternative tried
      //body += sections.body

    })

  });

因此,在每张图片中,multiselect右侧的部分按2种不同的顺序排列,但左侧的内容是相同的


粗体文本是字母的开头。因此,如果我理解正确的话,每张图片都在底部,您应该能够在循环之前对
代码
数组进行排序,以确定节的顺序。

您可以附加一个屏幕截图吗?或者可以在codesandbox/codepen/JSFIDLE上复制一个示例appreciated@TasosBu我用截图编辑了它,我相信问题在于t MCEINSERCONTENT方法。它说它“在插入符号位置插入内容”。您是否尝试过使用
prevContent+newContent
设置内容()?@TasosBu我认为这也是问题所在。但是就像我说的,如果我不使用tinymce,只将
sections.body
赋值给一个变量,每次它都给出相同的顺序。我不介意是否有办法将其按正确的顺序设置为变量。因为这样我就可以使用变量了