我正在寫跟蹤它有多少時間被調用,以生成唯一ID的元素標籤:當再次調用相同的Play模板時變量的作用域如何?
%{
try {
coolTagId++;
} catch (Exception) {
coolTagId = 0;
}
}%
<div id='cool-tag-${coolTagId}'></div>
...
$('#cool-tag-${coolTagId}').click(function(){alert("Cool Tag ${coolTagId} clicked")});
當我包括一個頁面此標記多次,讓我吃驚,我發現每次評估時coolTagId
都是0。這是爲什麼發生?
(我將使用某種形式的UID在此之前,我只是想知道爲什麼上面的代碼不工作)
提醒我在WebObjects中,組件之間同步變量時存在一種不太簡單的機制。此行爲在默認情況下處於啓用狀態,而使組件高效的第一步是手動管理同步,或者更好地將它們轉換爲無狀態組件。 –