| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка под ASP.NET > Отладка (debug) javascript'a на aspx странице. |
| Автор: andrew_sh 30.11.2007, 13:52 |
| Как собставенно это делать ? Как ставить breakpoints и т.д. ??? |
| Автор: Zakonnic 30.11.2007, 15:22 |
| Никак Такое вроде умеет новая вижуалстудия (2008). А я пока обхожусь дивом с id='res', и кучей res.innerHTML+=myVariable+'; '; |
| Автор: Servena 30.11.2007, 16:41 |
| Если ИЭксплоером пользуешься то включи режим отладки ошибок - тогда будешь видеть хотя бы где ошибка. Есил Огненной лисой - там в Инструментах есть консоль ошибок - всегда можно посмотреть где ошибка. Или установи специальное разсширение - там вообще все круто, все ДОМ виден. Если Оперой - там тоже есть консоль ошибок - она всегда там сообщает "Где?". |
| Автор: andrew_sh 30.11.2007, 18:26 |
| Пользуюсь (точнее испраляю написанное под...) IE..... Тут вопрос в том что работает все без ошибок..... На IE6 работает так ка нужно (например по нажатию кнопки заполняет поля), а в IE7 - нет (поля не заполняются)... Может кто подскажить какте-нибудь варианты, как это можно подебажить ??? Можно же както прикрутить Microsoft Script Debuger или дебагер от VS2005 ??? Добавлено через 1 минуту и 1 секунду 2Zakonnic: А поподробней...С JS работаю первый раз.... |
| Автор: Servena 30.11.2007, 18:40 |
| Если есть возможность, то приведи код, где не срабатывает. Потому что действительно, ДОМ у ИЭксплоэров, похоже, немного разный. У нас на фирме тоже с этим проблемы возникают регулярно. А отлаживают Джаваскрипт (не знаю, как там в Студии 2008) просто: используют алерты, инэрхтмл, консоли ошибок браузеров, разные "левые" средства. Добавлено через 7 минут и 13 секунд |
| Автор: Zakonnic 2.12.2007, 15:30 | ||||
| К сказанному выше добавлю, что увидев номер строки ошибки, сам код, ее вызывающий, можно найти, щелкнув правой кнопкой по странице -> View Source -> переходим к строке с этим номером (помогают текстовые редакторы, показывающие номера строк: EmEditor, Notepad++ и др.) Угу. Я пользую IE Developer Toolbar. Показывает весь DOM - можно просмотреть все свойства HTML-элементов, тыкнув в них мышью или выбрав в списке. Скрипты не показывает, их я смотрю в Опере, через похожий плагин. В смысле - сам текст скриптов. Но проблема твоя - посмотреть значения переменных при работе скриптов, посмотреть, куда пошел алгоритм и т.д. Делается это руками: В любое удобное место в HTML вставляем, например,
В javascript имеем какую-то переменную myVariable и несколько мест в JS-коде, где интересует ее значение. Соответственно туда вместо брекпоинтов вставляем строки
И вот в этот div будут дописываться отладочные данные. Метки - чтобы в них не заблудиться. |
| Автор: Magnetic 5.12.2007, 19:38 | ||
| Чтобы отлаживать яваскрипт в 2005-й студии можно в ИЕ включить дебаг яваскприта в настройках и в коде поставить оператор:
который срабатывает как брейкпойнт. |
| Автор: andrew_sh 6.12.2007, 12:37 |
| Спасибо всем за ответы. Вариант Magnetic'a то что нужно.... Ссылка по теме http://blogs.msdn.com/ie/archive/2004/10/26/247912.aspx Вообще проблема заключалась в том, что в IE 7 другая последовательность событий.... Пришлось немного поизващаться над JS кодом... |
| Автор: vladsch 25.12.2007, 17:48 |
| Или я не понял вопроса или вы не знаете этих элементарных вещей: Дебаг в Internet Explorer Откройте Visual Studio. Запустив браузер, можно к нему приаттачиться (iexplorer.exe) используя меню Tools | Attach to Process (если браузер открывается из под студии, то можно и не аттачиться). Открываем окошко Script Explorer в Visual Studio, используя меню Debug | Windows. Это окошко покажет все доступные скрипты. Можно открыть любой скрипт и поставить брякпоинт. P.S: Убедитесь что отладка разрешена в Internet Explorer. По умолчанию она выключена. Чтобы разрешить отладку, откройте диалог Internet Options, используя меню Tools | Options, и выберите вкладку Advanced. В категории Browsing выставите следующие опции: - Disable script debugging (Internet Explorer): снять выделение - Disable script debugging (Other): снять выделение - Display a notification about every script error: установить выделение Также можно джаваскрипт код вставить волшебное слово debugger и студия легко его поймает во время выполнения этого кода и переключится в режим отладки джаваскрипта Отладка в Firefox Берем Firebug (https://addons.mozilla.org/firefox/1843/) расширение для Firefox, которое встраивает дебаггер прямо в браузер. Этот дебаггер эквивалентен дебаггеру Visual Studio. Удачи |