文本框文本值未定义或含糊不清的消息
Textbox text value is undefined or cryptic message
我想将输入的名字赋予header。这是我的文本区域和 header,它位于另一个 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}
你的代码有很多错误。
这里是纯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>
$("#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()
我想将输入的名字赋予header。这是我的文本区域和 header,它位于另一个 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}
你的代码有很多错误。
这里是纯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>
$("#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()