にイベントハンドラを生成します。私はAJAX JSONを使用してバックエンドから取得このコードで私はこのようなコードを書いたループ
for (i = 0; i < html.length; i++) {
$p("#panel").append("<div id='flip_sector_"+section+"' style='padding: 5px;text-align: left;background-color: white;'>"+html[i].sector_name+"</div><div id='panel_sectors_"+section+"' style='padding:5px;text-align: left;background-color:white;display: none;'>sectors</div>");
// $p("#flip_sector_"+html[i].id+"").click(function(){
// $p("#panel_sectors_"+html[i].id+"").slideToggle("slow");});
// console.log(html[i].id);
section++;
console.log(section);
}
var sectionJs = 0;
// for (i = 0; i < html.length; i++) {
$p("#flip_sector_" + sectionJs + "").click(function() {
$p("#panel_sectors_" + sectionJs + "").slideToggle("slow");
sectionJs++;
});
// console.log(html[i].id);
// }
を。 html
変数は、私が解析してdiv
のIDが$p("#panel")
であるappend()
を使用するJSONデータです。
次に、私はそれぞれflip_sector_" + sector
のために、slideToggle()
を動的に作成する必要があります。しかし、私は
append("<div id='flip_sector_" + section + "' style='padding: 5px;text-align: left;background-color: white;'>" + html[i].sector_name + "</div><div id='panel_sectors_" + section + "' style='padding:5px;text-align: left;background-color:white;display: none;'>sectors</div>")
で同じIDを作成し、
$p("#flip_sector_"+sectionJs+"").click(function(){
$p("#panel_sectors_"+sectionJs+"").slideToggle("slow");sectionJs++;
で
})することはできません。
私を助けることができますか?
IDはユニークであることを覚えておいてください。 –