获取附加文本区域的值
我附加一个textarea按钮
$(".mydiv").append("my button");
在那之后,我正在将新文本写入textarea,并试图通过点击function在textarea中获取新的writed值;
jQuery(document).on('click','.sendReply', function () { var myNewText = $("#myTextarea").val(); console.log(myNewText); });
但它说这是一个“空字符串”,如果我添加一个像我的fucntion工作并给我“一些文本”,但如果我编辑textarea和点击sendReply按钮(我的点击function),它仍然给我“一些文字”,它不会改变
如何在应用textarea之后获得编辑的textarea值?
你有一个 .
在附加HTML的 .sendReply
你只需要删除.
来自.sendReply
使用
my button"
当您使用事件委托时,您的jQuery将起作用。
当您多次添加具有相同ID的textarea时? $("#myTextarea").val()
将始终显示id为myTextarea的第一个textarea的值。 您可以使用公共类,然后使用prev()
来选择textarea
见例子
$(document).ready(function() { $(document).on('click', '.sendReply', function() { var myNewText = $(this).prev(".myTextarea").val(); alert(myNewText); }); for (var i = 0; i < 5; i++) { $(".mydiv").append("my button"); } });
它应该是
$(".mydiv").append("my button");
然后
jQuery(document).on('click','.sendReply', function () { var myNewText = $("#myTextarea").val(); console.log(myNewText); });
不要使用点(。)作为类名..
而不是使用div ..使用一些标准来编码..你可以让它有按钮..这里是代码
$(".mydiv").append(""); jQuery(document).on('click','.sendReply', function () { var myNewText = $("#myTextarea").val(); console.log(myNewText); alert(myNewText); });
的jsfiddle