我有一個複選框列表,並在我的網頁onclick事件的ImageButton的,點擊ImageButton的執行回傳和運行OnClick事件精細我可以使用javascript移動div並保留其回發能力嗎?
麻煩的是,我想移動的股利是在<form>
這樣的第一個孩子,我可以讓它出現在模式窗口 - 我使用的prototype.js代碼這樣做...
document.observe("dom:loaded", function() {
if ($$('.CheckboxListContainer').length>0) {
var modalShadow = document.createElement('div');
modalShadow.setAttribute("class", 'MyFormModalShadow');
modalShadow.style.width = document.viewport.getWidth() + 'px';
modalShadow.style.height = document.viewport.getHeight() + 'px';
var modalDiv = document.createElement('div');
modalDiv.setAttribute("class", 'MyFormModal');
var checkboxesDiv = $$('.CheckboxListContainer')[0];
checkboxesDiv.remove();
modalDiv.appendChild(checkboxesDiv);
$$('form')[0].insert({top: modalShadow});
$$('form')[0].insert({top: modalDiv});
Event.observe(window, "resize", function() {
if ($$('.MyFormModalShadow').length>0) {
var modalShadow = $$('.MyFormModalShadow')[0]
modalShadow.style.width = document.viewport.getWidth() + 'px';
modalShadow.style.height = document.viewport.getHeight() + 'px';
}
});
}
});
...工作正常,但ImageButton的是沒有在回發時更長時間觸發我的OnClick事件。
有沒有辦法在DOM中移動我的div並保留它的回發能力?
當你刪除行checkboxesDiv.remove();'?另外,當你點擊圖像按鈕時會發生什麼?頁面是否重新加載? –
刪除checkboxesDiv.remove();不會改變代碼的結果(並且回發仍然沒有被觸發),我只是想確保元素在將其添加回其他地方之前被完全刪除。是的,當你點擊圖片按鈕時頁面會重新加載 – Steve
快速測試表明我移動按鈕並沒有「毀掉」PostBack事件..你怎麼能告訴「ImageButton不再觸發我的OnClick事件」?你把斷點和調試? –