Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery click事件未在附加元素上触发_Jquery - Fatal编程技术网

Jquery click事件未在附加元素上触发

Jquery click事件未在附加元素上触发,jquery,Jquery,这快把我逼疯了。我在加载页面后向表中添加行。有一个按钮用于删除该行,还有一个按钮用于将其保存到数据库。添加新行后,我可以使用单击事件将其删除。然而,当添加一行并试图遍历它以访问以前的输入时,我什么也得不到。不确定我做错了什么 理想情况下,当我点击save按钮时,它会显示前面的值:,所以我希望看到“test” HTML jQuery $('#addChatQuestion').click(function() { var newRow ='<tr><td><inp

这快把我逼疯了。我在加载页面后向表中添加行。有一个按钮用于删除该行,还有一个按钮用于将其保存到数据库。添加新行后,我可以使用单击事件将其删除。然而,当添加一行并试图遍历它以访问以前的输入时,我什么也得不到。不确定我做错了什么

理想情况下,当我点击save按钮时,它会显示前面的值:
,所以我希望看到“test”

HTML


jQuery

$('#addChatQuestion').click(function() {
var newRow ='<tr><td><input class="box1" type="text" value="" /> <input class="box2"  type="text" value="test"> <input class="qSave" type="button" value="Save"><input class="qDelete" type="button" value="Delete"></td></tr>';
$('#mainBody').append(newRow);
});

$('.questionBody').on('click', '.qSave', function() {
var score = $(this).prev().val();
alert(score);
});

$('.questionBody').on('click', '.qDelete', function() {
$(this).closest('tr').remove();
});
$('addChatQuestion')。单击(函数(){
var newRow='';
$(“#主体”).append(newRow);
});
$('.questionBody')。在('单击','.qSave',函数()上{
var score=$(this.prev().val();
警惕(得分);
});
$('.questionBody')。在('单击','.qDelete',函数()上{
$(this).closest('tr').remove();
});

这里有一个JSIDLE:

您是否试图单击下面列出的保存按钮,并让它在绘制时提醒上面的按钮

如果您希望在
警报
中看到
测试
,则系统正常工作

我有:
  • 创建了10个元素
  • 移除其中5个
  • 增加了3个
  • 每次测试每个值和相应的
    测试
    警报

似乎对我很好,即使是贴出来的提琴。@adeneo只有在你的电脑上才有效?提琴对我也很好。你看到的是什么而不是“测试”?@GertB也许我很特别!说真的,它很好地发出警报,很好地删除,我不明白为什么它不会?看起来我忘记了qSave之前的一段时间。也许我应该意识到,在我发布这个问题时添加了它。我只是想在格式化代码时删除了它。显然不是。谢谢你们,原谅我疲惫的眼睛。
$('#addChatQuestion').click(function() {
var newRow ='<tr><td><input class="box1" type="text" value="" /> <input class="box2"  type="text" value="test"> <input class="qSave" type="button" value="Save"><input class="qDelete" type="button" value="Delete"></td></tr>';
$('#mainBody').append(newRow);
});

$('.questionBody').on('click', '.qSave', function() {
var score = $(this).prev().val();
alert(score);
});

$('.questionBody').on('click', '.qDelete', function() {
$(this).closest('tr').remove();
});