1
我正在通過PHP循環訪問數據庫中的項目,試圖在外部窗體中調用單擊時編輯每個項目。我已經寫了基於Prototype框架的JavaScript,這讓我大部分都在那裏。但是,當試圖選擇被單擊項目的父元素時,在第一次成功編輯後,後續編輯失敗,並且第一個編輯元素的內容被最後一個被點擊的項目取代。如何用Prototype/JS選擇特定的動態生成元素?
。換句話說,我有這樣的列表:
甲 乙 Ç
點擊 「A」 並改變其後爲 「1」 通過我的外部形式,隨後選擇 「B」 和改變爲 「2」 的結果如下所示:
ç
隨着康特第二項(B或2)的替換內容的第一項(a或1.)
請注意,這是不是我的PHP外部表單的問題(刷新頁面將顯示我所有的更新值正確。)我的問題是與JavaScript選擇正確的父元素,其中顯示我的帖子的結果。
(作爲一個有趣的方面說明,當我通過點擊和改變我的元素開始在列表的底部,沒有任何元素被覆蓋和頁面的功能,因爲它應該。)
function inlineEditor() {
$$('div.form span.status').each(function(elm){
elm.observe('click',function(evt){
Event.stop(evt);
var block = this.up('div.form');
var item = block.id;
new Ajax.Updater(block,'status_types_edit.php',{
parameters:{id:item},
evalScripts:true
});
});
});
}
<body onload="inlineEditor();">
<?php do { ?>
<div class="form" id="<?php echo $row_GetStatus_Types['id']; ?>">
<span class="status"><?php echo $row_GetStatus_Types['status_name']; ?></span>
</div>
<?php } while ($row_GetStatus_Types = mysql_fetch_assoc($GetStatus_Types)); ?>