Javascript 使用jquery和按钮中生成的textarea时出错
我正在尝试创建一个可以回复一些消息的站点,当单击上一个“回复”按钮时,jquery中会生成textarea。然后显示了一个发送消息的按钮(使用Ajax),但现在我无法获取textarea的值,即使尝试使用不同的ID,因为每条消息都有一个数字Javascript 使用jquery和按钮中生成的textarea时出错,javascript,jquery,html,textarea,Javascript,Jquery,Html,Textarea,我正在尝试创建一个可以回复一些消息的站点,当单击上一个“回复”按钮时,jquery中会生成textarea。然后显示了一个发送消息的按钮(使用Ajax),但现在我无法获取textarea的值,即使尝试使用不同的ID,因为每条消息都有一个数字 $(document).ready(function() { //Reply messages $(".reply-btn").click(function() { //Clicking reply button on message list
$(document).ready(function() {
//Reply messages
$(".reply-btn").click(function() { //Clicking reply button on message list
var class_reply = this.className.match(/btn_(\d+)/)[1];
$( ".panel-body" ).prepend( '<div class="main-reply-msg"></div>' );
$( ".main-reply-msg" ).append( '<textarea class="message_replied" id="message_replied_'+class_reply+'" rows="10" cols="300" style="max-width: 100%;"></textarea>' );
$( ".main-reply-msg" ).append( '<a href="#" class="btn btn-primary reply-msg-conv" style="width:100%;" role="button">Reply</a>' );
$( ".main-reply-msg" ).append( '<hr>' );
$(".reply-msg-conv").click(function() { //Sending the reply
message_replied_txt = $('.message_replied').val();
console.log(message_replied_txt);
});
});
});
$(文档).ready(函数(){
//回复信息
$(“.reply btn”)。单击(函数(){//单击邮件列表上的回复按钮
var class_reply=this.className.match(/btn_(\d+)/)[1];
$(“.panel body”).prepend(“”);
$(“.main reply msg”).append(“”);
$(“.main reply msg”).append(“”);
$(“.main reply msg”).append(“
”);
$(“.reply msg conv”)。单击(函数(){//发送回复
message_responsed_txt=$('.message_responsed').val();
日志(消息\u已回复\u txt);
});
});
});
这就是代码,我正试图让它工作,第二次单击可以工作,但是textarea.val()是空的。我还试着将第二个click()放在第一个之外,但是这个click()不起作用
以前有人遇到过这个问题,因为我尝试过很多方法,但都没有效果
更新以使其更易于理解:
- class_reply的值运行良好。测试
- 此函数位于onready()函数中
尝试使用以下方法:
$(document).on('click', 'element', function(){});
我不认为从textarea检索文本的方式有问题 在这个小提琴中,我唯一更改的是
class\u reply
变量。我给了它一个固定值。因此,当您尝试检索匹配的值时,可能会出现问题。
如果将clas\u reply
变量记录为console.log,它会打印什么?美元(“.reply msg conv”)对象上的单击事件将不起作用,因为它是从运行时追加的。您需要打开函数来触发单击
$(document).on("click", ".reply-msg-conv", function(){
//your click function
})
我在first click()内外都尝试过,但没有显示textarea值。甚至我也尝试过在
$(document).ready(function()之外{
我试过你的小提琴,效果如预期,我试过显示class_reply,也在我的jquery中工作,但不显示textarea和输入的输入值。我不知道哪里会出现问题。即使使用这个方法,textarea和一个测试输入也是空白的。输入的值不会显示任何内容