Хочу дать шапке введенное имя. это мое текстовое поле и заголовок, который находится в другом html файле:

<textarea class="form-control" placeholder="Leave a comment here" id="floatingTextarea"></textarea>
<h1 id="noteheader"></h1>

Я пытаюсь получить его значение с помощью следующего кода:

$( "#s1" ).click(function(e) {
    e.preventDefault();
    var h = document.getElementById('noteheader');
    var header = String($('floatingTextarea').value);
    h.innerHTML = header;
  });}

Но кажется, что он не определен, хотя я что-то напечатал в текстовом поле. Я пробовал это с помощью innerHTML, innerText, а также val, что дает мне загадочный вывод, например:

function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}
1
Holunk 5 Окт 2021 в 20:51

2 ответа

Лучший ответ

Так много ошибок в вашем коде.

Вот чистая версия jQuery.

$("#s1").click(function(e) {
  e.preventDefault();
  var h = $('#noteheader');
  var header = $('#floatingTextarea').val();
  h.html(header);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea class="form-control" placeholder="Leave a comment here" id="floatingTextarea"></textarea>
<h1 id="noteheader"></h1>
<button id="s1">S1</button>
0
Shree 5 Окт 2021 в 18:03
$("#s1").on('click',function(e) {

    e.preventDefault();
    var h = document.getElementById('noteheader');
    var header = $('#floatingTextarea').val();
    h.innerHTML = header;
  });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea class="form-control" 
          placeholder="Leave a comment here" 
          id="floatingTextarea"></textarea>
<h1 id="noteheader"></h1>
<button id="s1">Save</button>

В вашем коде не было этого:

$('#floatingTextarea').val();

.value - свойство JS для получения значения. для кода JQuery у вас есть .val()

0
Pran Sukh 5 Окт 2021 в 18:20