2012-04-17 40 views
0

首先,我把DIV如何從觸發當前事件的事件中檢索數據?

<div class=grades> Grade: 1, 2, 3, 4, 5, 6 </div> 
<div class=classes> Classes numbers depend on the grade </div> 
<div class=students> Students names depend on the grade and class </div> 

的列表以及每個等級數的定義如下:

<a href=# class=gradenum>1</a> 
<a href=# class=gradenum>2</a> 
<a href=# class=gradenum>3</a> 
..... 

然後我嘗試使用jquery點擊的數量級顯示類別號。

$("a.gradenum").click(function(){ 
    var grade = $(this).text(); 
    $("div#classes").load("ShowClasses.php",{'grade':grade}); 
}); 

它按預期工作。類以相似的格式顯示。現在我想用同樣的過程來顯示給定的年級和班級編號的學生姓名。

$("div#classes").on("click", "a.classnum",function(){ 
    var class = $(this).text(); 
    var grade = ?????? //How do I get the grade number here? 
    $("div#students").load("ShowStudents.php",{'grade':grade, 'class':class}); 
}); 

如何從我在等級行中第一次點擊的編號中獲得等級編號。

+1

您可以在選定的等級存儲在一個變量和使用,在類的事件。 – 2012-04-17 20:33:52

+0

在你的代碼中你應該有div.classes,而不是div#類。你試圖識別一個班級,而不是一個ID。據我所知,你沒有存儲等級號碼。這個鏈接是什麼樣的? – 2012-04-17 20:34:30

回答

0

您可以使用index()方法。

$(".classes").on("click", ".classnum", function() { 
    var $this = $(this); 
    var class = $this.text(); 
    var grade = $this.index() + 1; // Start at 0 
    $(".students").load("ShowStudents.php",{'grade':grade, 'class':class}); 
}); 
0

我會做這樣的:

var grade; // Move this outside, making it "global". 

$("a.gradenum").click(function(){ 
    grade = $(this).text(); // Set the global grade 
    $("div.classes").load("ShowClasses.php",{'grade':grade}); 
}); 

$("div.classes").on("click", "a.classnum",function(){ 
    var class = $(this).text(); 
    // Use the global grade. 
    $("div#students").load("ShowStudents.php",{'grade':grade, 'class':class}); 
});