gpt4 book ai didi

javascript - jquery - 获取最近元素的id?

转载 作者:行者123 更新时间:2023-12-02 21:05:29 27 4
gpt4 key购买 nike

这是我的代码,用于在单击输入时编辑输入,然后保存在数据库中。


$(document).ready(function() {
$('.editable').on('click', function() {
var that = $(this);
if (that.find('input').length > 0) {
return;
}
var currentText = that.text();
var $input = $('<input>').val(currentText);
$(this).append($input);

// Handle outside click
$(document).click(function(event) {
if(!$(event.target).closest('.editable').length) {
if ($input.val()) {
that.text($input.val());

var div_id = $(this).closest('#commentbox').attr('id');
div_id = div_id.replace('comment-', '');
alert(div_id);
$.post( "updateComment.php", {id: div_id,message: $input.val()})
}
that.find('input').remove();
}
});
});
});

Var div_id 根本无法检索它。我只想从中检索 id 中的数字,但它不起作用。我尝试了多种解决方案,最后一个也不起作用


<div id="comments">
<div class="commentbox" id="comment-90">...</div>
<div class="commentbox" id="comment-91">...</div>
</div>

最佳答案

这部分代码基本上是有问题的:

var div_id = $(this).closest('#commentbox').attr('id');

首先,您试图从 document 获取最接近的元素如this指向document在你的代码的那部分(你的意思可能是 event.target )。其次,您试图找到与 id == 'commentbox' 最接近的元素,因为这就是#<selector>方法。您应该为此目的使用一些其他属性 - 可能最好是一些类选择器,然后使用 .attr('id')就在上面。

关于javascript - jquery - 获取最近元素的id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61236103/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com