Давайте сначала настроим структуру.
message. php
<div class="msgcontent content" id="bodycontent">
<div class="getmsglist"></div>
</div>
<script>
setInterval(function(){
$('.getmsglist').load('processes/messagelist.php');
}, 500);
</script>
список сообщений. php
<?php while($mat = $stmt->fetch()){ ?>
<div class="messagebox" this-chat="<?php echo $mat['mem_id']; ?>">
// Other Stuffs
</div>
<?php } ?>
Итак, выше мы видим, что на странице message.php
данные загружаются на getmsglist
div со страницы messagelist.php
. На messagelist.php
атрибут this-chat
содержит идентификатор пользователя. Я хочу, чтобы этот идентификатор пользователя выбирался через AJAX. В настоящее время то, что я пробовал, возвращало один и тот же идентификатор пользователя для всех строк. Мне нужно это исправить.
То, что я пытался ...!
$(".msgcontent").click(function() {
var memid = $(".messagebox").attr("this-chat"); // doesn't work (fetches same id for all rows)
//var memid = $(this).children(".messagebox").attr("this-chat"); // this returned undefined as well
var dataString = {
memid: memid
};
console.log(dataString);
});
$(".messagebox")
здесь не работает и возвращает одинаковый идентификатор пользователя для всех строк. Вместо этого я попробовал «$ (this)», но он вернул undefined
, поскольку он пытается извлечь атрибут div «.msgcontent», который не существует. Как я могу получить значение этого атрибута, различное для всех строк?