Невозможно получить текст из стиля Textarea - PullRequest
0 голосов
/ 29 октября 2019

Я не могу получить текст из textarea по какой-то неизвестной причине, если я пытаюсь использовать простой текстовый файл без использования какой-либо библиотеки javascript, он получает текст. Но при использовании любой библиотеки она показывает неопределенную. Может кто-нибудь объяснить, почему?

Вот мой код:

<!DOCTYPE html>
<html>
<body>
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.71/jquery.csv-0.71.min.js"></script>

 <div id="sample">
<!--  <script type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
        bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
  //]]>
  </script> -->
     
   <h1>
    Testing page for Text Areas
  </h1>

  <textarea id="area2" style="width: 80%;">
</textarea><br />
    <button type="button" onclick="myFunction()" id="submit_text2"> Submit Email </button>

<p id="demo">jkjnjk</p>
</div>
      
<script>
function myFunction() {
  var x = document.getElementById("area2").value;
    document.getElementById("demo").innerHTML = x;
  console.log(x);
    alert(x);
}
</script>
  
</body>
</html>

Здесь он получает и показывает текст в Alert

Теперь, если я раскомментирую скрипт, чтобы улучшить текстовую область, используя

<script type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
        bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
  //]]>
  </script>

<!DOCTYPE html>
<html>
<body>
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.71/jquery.csv-0.71.min.js"></script>

 <div id="sample">
  <script type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js"></script> 
  <script type="text/javascript">
    //<![CDATA[
        bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
    //]]>
  </script>
     
   <h1>
    Testing page for Text Areas
  </h1>

  <textarea id="area2" style="width: 80%;">
</textarea><br />
    <button type="button" onclick="myFunction()" id="submit_text2"> Submit Email </button>

<p id="demo">jkjnjk</p>
</div>
      
<script>
function myFunction() {
  var x = document.getElementById("area2").value;
    document.getElementById("demo").innerHTML = x;
  console.log(x);
    alert(x);
}
</script>
  
</body>
</html>

Теперь ничего не осталось (со скриптом проблем нет, я пробовал и другие!

1 Ответ

1 голос
/ 29 октября 2019

Это потому, что когда вы используете "стиль текста", он просто создает что-то еще поверх вашего текста. Вам нужно использовать [nicInstance].getContent(). Вы можете прочитать документы niceEditor здесь

В вашем случае, поскольку вы не сохранили свой экземпляр переменной, вы должны иметь возможность использовать nicEditors.findEditor('area2').getContent();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...