Причины, почему селекторы на основе id не работают
Решения
$(document).ready();
.bind()
для jQuery. В старых версиях jQuery для этого было .live()
. Можно распечатать из командной строки с помощью следующего:
rundll32.exe %WINDIR %\System32\mshtml.dll, PrintHTML "%1"
, Где %1 путь к файлу файла HTML, который будет распечатан.
, Если Вы не должны печатать из памяти (или может позволить себе записать в диск во временном файле) можно использовать:
using (Process printProcess = new Process())
{
string systemPath = Environment.GetFolderPath(Environment.SpecialFolder.System);
printProcess.StartInfo.FileName = systemPath + @"\rundll32.exe";
printProcess.StartInfo.Arguments = systemPath + @"\mshtml.dll,PrintHTML """ + fileToPrint + @"""";
printProcess.Start();
}
N.B. Это только работает над Windows 2000, и выше я думаю.
Я знаю, что сама Visual Studio (по крайней мере, в 2003 версия) ссылается на IE dll непосредственно для рендеринга "Режима конструктора".
может стоить изучить это.
Иначе, я ни о чем не могу думать вне управления веб-браузером.
Я не знаю определенные инструменты, но существуют некоторые утилиты, которые записывают / щелчки воспроизведения. Другими словами, Вы могли автоматизировать "щелчок" по диалоговому окну печати. (Я знаю, что это - взлом, но когда все остальное перестало работать...)
Я оснащаю, который работает очень хорошо на меня, HiQPdf. https://www.hiqpdf.com /
цена разумна (запускается на уровне 245$), и это может представить HTML к PDF и также справиться с печатью файлов PDF непосредственно.
Может это поможет. http://www.codeproject.com/KB/printing/printhml.aspx Также не уверен, из какого потока вы пытаетесь получить доступ к элементу управления браузера, но это должен быть STA
. Примечание. Проект, указанный в ссылке, действительно позволяет вам перейти на страницу и выполнить печать без отображения диалогового окна печати. .
Если у вас есть бюджет (~ 3000 долларов), посмотрите PrinceXML .
Он преобразует HTML в PDF, хорошо работает в служебной среде и поддерживает расширенные функции, такие как отсутствие разрыва страницы в середине ячейки таблицы (что в настоящее время не поддерживается многими браузерами).