我有一個類.display_noti
一個div
和裏面我已經從數據庫append
另一個div
與.palnotific
類由jquery.I已讀取的數據,我轉換該讀入數據到json_encode
.I使用的JSON格式數據並提出了一些信息,其分別是和append
。如果所有div都具有相同的類,如何從jquery點擊事件的多個div中選擇一個div?
.display_noti
類
我的第一個jQuery代碼看起來像: -
$.getJSON("notification.php",function(data){
// you can do checking here
if (data.result && data.result.length > 0) {
$(".display_noti").empty(); // Clear out the div
$.each(data.result,function(){
$(".display_noti").append("<div class='palnotific'>You got a pal requet from <strong>"+this['from_user']+"</strong><br><span class='date'>"+this['notification_date']+"<form method='post'><input type='text' class='palid' value='"+this['pals_id']+"'></form></div>");
});
done();
}
else {
$(".display_noti").append("<div class='palnotific' style='background-color:white;'>You have no notification to view.</div>");
}
在上面,我先拿到的JSON格式的數據,我做了一些驗證,然後在最後我附上那第二個div與.palnotific
類.palnotific
裏面的第一個div類.display_noti
。我有一個表格裏面附加div,我用它來從輸入值使用。
我們知道.palnotific
是一個附加div.I想用一些onclick事件函數就可以了的話,我用下面的代碼: -
$('body').on('click','.palnotific',function(){
var x = $(this).closest('.display_noti').find('.palid');
var pid=x.val();
$.ajax({
url:'notifipro.php',
type:'post',
data:"palid="+pid,
success: function(data){
if(data==1)
{
$(window).load('oldpage.php');
}
if(data==2)
{
$(window).load('newpage.php');
}
}
});
});
上面的代碼需要從形式是內部的輸入值那.palnotific
div是從jquery前面追加的。正如你所知道的那些附加的div通過json_encode
從數據庫攜帶數據。它將獲得儘可能多的數據庫中的值,這意味着如果數據庫中有2個數據,json_encode也會有2個數據,那些追加div類從json_encode採取數據將追加2時間div與類palnotific
。現在我的問題是,如果我有兩個d iv與類palnotifi
源於該追加我的點擊功能工作第一個div只有當我點擊第二個div onclick
函數不起作用。無論我有2個或更多,然後兩個div如果我點擊任何一個div第一個div點擊功能採取行動。我可以如何讓onclick
函數只對那些被點擊過的div有效?
如果您可以將代碼粘貼到示例jsfiddle中,該示例可能會幫助某些人獲得解決方案。 –
@BryanRay可以從jquery'onclick'函數中選擇具有相同類的div組中的一個div嗎?我想選擇並採取行動那些只能被點擊的div,所以我們怎麼才能從jquery中做到這一點? –
如果你只是顯示輸出HTML的樣子,這將更容易理解。 – BadHorsie