作成した関数があり、id を動的クリック イベント ハンドラーに渡す必要があります。オブジェクトはなくなり、カウンター値は常に最後にインクリメントされた値になります。渡す方法はあると思いますが、わかりません。
これが私のデモコードです... http://jsfiddle.net/ryanoc/r62jJ/
どんな助けでも大歓迎です。
(function(){
$('#chartContainer').empty().attr("style", "overflow: hidden;");
var office = [];
var len = 5;
for (var i = 0; i < len; i++) {
var obj = {
officeTitle: 'Office:'+i,
officeId: i,
resizeable: true
};
office.push(obj);
}
for (var i = 0; i < office.length; i++) {
var chartHtml = $("<div>")
.attr("id", "chartContainer" + i)
.attr("style", "margin-top:20px;");
$('#chartContainer').append(chartHtml);
var officeLabel = $("<div>")
.attr("style", "background-color:#eee;cursor:pointer;")
.html(office[i]["officeTitle"] + ':' + office[i]["officeId"] )
.click(function(){
alert(i);
alert(office[i]["officeId"])
});
$('#chartContainer' + i).append(officeLabel);
}
})();