Я понимаю, что в IE 5.5, 6 и 7, когда вы изменяете элемент DOM до его «закрытия», он выдает ошибку «операция прервана» (эта статья содержит больше информации: http://www.clientcide.com/code-snippets/manipulating-the-dom/ie-and-operation-aborted/)
В моем приложении ASP.Net я регистрирую блок клиентского скрипта на странице во время события page_load. (Я попытался переместить этот код в событие page_loadcomplete или page_prerender безуспешно).
Вот мой код (довольно простой):
// Checks if the handler is a Page and that the script isn't already on the Page
if (page != null && !page.ClientScript.IsClientScriptBlockRegistered("blockUIAlert"))
{
ScriptManager.RegisterClientScriptBlock(page, typeof(ScriptUtilities),
"blockUIAlert", script, true);
}
Я использую этот код из других постбэков AJAX на моей странице без проблем. Эта ошибка возникает, только если этот код вызывается при загрузке страницы.
Что я могу сделать, чтобы этот код вызывался после закрытия элементов DOM? Я не хочу, чтобы пользователю приходилось инициировать это действие вручную - я хочу, чтобы этот код выполнялся, как только страница загружена, при условии соблюдения определенных условий на стороне сервера.