Я пытаюсь преобразовать страницу aspx в PDF с помощью Winnovative HTML в PDF конвертер, но перед тем, как конвертировать страницу, я хочу запустить некоторый javascript. Я знаю, что javascript работает, поскольку я протестировал отдельную страницу aspx, не преобразовав ее в PDF. Однако, когда он конвертируется, кажется, что javascript не был запущен. Я прочитал часто задаваемые вопросы на веб-сайте Winnovative (http://www.winnovative -software.com / FAQ.aspx), и в результате я добавил следующее в свой код, чтобы обеспечить возможность запуска javascript:
pdfConverter.ScriptsEnabled = True
pdfConverter.InternetSecurityZone = InternetSecurityZone.LocalMachine
Добавление этого кода по-прежнему не работало, поэтому я попытался закомментировать мой основной javascript и протестировать очень простой фрагмент javascript, чтобы увидеть, работает ли он. Я попробовал javascript просто:
var item = $(".items")[0];
items.style.display = "none";
Элемент с классом «items» окружает все на странице. Когда я сгенерировал PDF снова, все содержимое исчезло, как и ожидалось. Это означает, что JavaScript работает.
Затем я подумал, может быть, PDF генерируется до того, как мой javascript сможет запустить, поэтому эффекты не видны. В часто задаваемых вопросах веб-сайта Winnovative я обнаружил, что конвертер PDF имеет свойство ConversionDelay, которое можно использовать для указания дополнительного периода времени в секундах для ожидания загрузки асинхронного контента перед началом рендеринга PDF. Поэтому я добавил следующее:
pdfConverter.ConversionDelay = 30
Даже после этой задержки мой javascript все еще не запускается. Кто-нибудь может предложить какие-либо рекомендации? Спасибо.