使用jQuery更新textarea值更改的文本
我有一个textarea。 当textarea中的值通过键入或通过另一个jQuery函数放置一些值或粘贴来更改textarea中的值时,我需要更新div中的文本。
$(document).ready(function(){ function myFunc() { var input = $("#myTxt").val(); $("#txtHere").text(input); } myFunc(); // EDIT BELOW -- this will update while typing $("#myTxt").keyup(myFunc); });
它加载页面加载的值,但我不知道用什么来检查textarea中的值…
$(document).ready(function(){ function myFunc(){ var input = $("#myTxt").val(); $("#txtHere").text(input); } myFunc(); //either this $('#myTxt').keyup(function(){ $('#txtHere').html($(this).val()); }); //or this $('#myTxt').keyup(function(){ myFunc(); }); //and this for good measure $('#myTxt').change(function(){ myFunc(); //or direct assignment $('#txtHere').html($(this).val()); }); });
对于textarea,仅当textarea失去焦点时才会调用.change函数。
我在这个链接找到了我的解决方案: 如何在jQuery中绑定textarea的change事件?
$('#textareaID').bind('input propertychange', function() { $("#yourBtnID").hide(); if(this.value.length){ $("#yourBtnID").show(); } });
这对我来说非常合适。 它处理任何类型的更改,包括粘贴。
加上this.value.length
是一种很好的方式来查看textarea是否已被清除。
干杯!
$(document).ready(function(){ $('#myTxt').keypress(function(e){ $('#txthere').html($(this).val()); }); });
这样做会。
你可以像这样使用delegate
事件:
$('body').delegate('#myTxt', 'keyup change', function(){ $('#txtHere').text(this.value); });
只要您在文本框中键入或粘贴,就应该更新文本。
使用更改事件处理程序(将在内容更改且textarea失去焦点时激活):
$('#myTxt').change(function(){ var input = $("#myTxt").val(); $("#txtHere").text(input ); });
$(document).delegate('#myTextareaId','input', function() { $('#myTextId').html($(this).val()); });
2018年,没有JQUERY
问题是JQuery,它只是FYI。
JS
let myTxt = document.getElementById('myTxt'); let txtHere = document.getElementById('txtHere'); myTxt.addEventListener('input', function() { txtHere.innerHTML = myTxt.value; });
HTML