Quiero dar el nombre ingresado al encabezado. esta es mi área de texto y el encabezado, que está en otro archivo html:
<textarea class="form-control" placeholder="Leave a comment here" id="floatingTextarea"></textarea> <h1 id="noteheader"></h1>Estoy tratando de obtener su valor con el siguiente código:
$( "#s1" ).click(function(e) { e.preventDefault(); var h = document.getElementById('noteheader'); var header = String($('floatingTextarea').value); h.innerHTML = header; });}pero parece estar indefinido a pesar de que escribí algo en el área de texto. Lo probé con innerHTML, innerText y también val, lo que me da un resultado críptico como:
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}Tantos errores en tu código.
Aquí está la versión jQuery pura.
$("#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> $("#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>A tu código le faltaba esto:
$('#floatingTextarea').val();
.value es la propiedad JS para obtener valor. para el código JQuery tienes .val()