Как JavaScript печатает функциональную работу? Я могу создать документ с помощью JavaScript и распечатать его прочь?

В зависимости от каких объектов Вы проверяете, что можно быть в состоянии использовать некоторые классы в апачском свободном городском населении, таком как: апачское свободное городское население Ленг и апачские наборы свободного городского населения

Пример:

String foo;
...
if( StringUtils.isBlank( foo ) ) {
   ///do something
}

или (в зависимости от того, что необходимо проверить):

String foo;
...
if( StringUtils.isEmpty( foo ) ) {
   ///do something
}

класс StringUtils является только одним из многих; существует довольно много хороших классов в свободном городском населении, которое действительно аннулирует безопасное управление.

Здесь следует примеру того, как можно использовать пустую проверку в JAVA при включении апачской библиотеки (commons-lang-2.4.jar)

public DOCUMENT read(String xml, ValidationEventHandler validationEventHandler) {
    Validate.notNull(validationEventHandler,"ValidationHandler not Injected");
    return read(new StringReader(xml), true, validationEventHandler);
}

И если Вы используете Spring, Spring также имеет ту же функциональность в своем пакете, посмотрите библиотеку (пружина-2.4.6.jar)

Пример о том, как использовать этот статический classf с пружины (org.springframework.util. Утверждайте)

Assert.notNull(validationEventHandler,"ValidationHandler not Injected");

6
задан Matt 7 August 2009 в 21:11
поделиться

4 ответа

Print () - это метод объекта окна. Если вы создаете документ в окне с помощью javascript, а затем вызываете print для этого объекта окна, он должен работать.

<script type="text/javascript">
    var myWindow = window.open('','','width=200,height=100')
    myWindow.document.write("This is 'myWindow'")
    myWindow.print();
</script>

Пример изменен из w3schools.

5
ответ дан 10 December 2019 в 02:51
поделиться

Моя первая мысль:

Вы можете создать iframe программно, назначить HTML-код для печати, вызвать функцию print () в контексте iframe.contentWindow, а затем удалить iframe из DOM:

function printHTML(input){
  var iframe = document.createElement("iframe"); // create the element
  document.body.appendChild(iframe);  // insert the element to the DOM 

  iframe.contentWindow.document.write(input); // write the HTML to be printed
  iframe.contentWindow.print();  // print it
  document.body.removeChild(iframe); // remove the iframe from the DOM
}

printHTML('<h1>Test!</h1>');

Вы можете протестировать приведенный выше фрагмент здесь .

2
ответ дан 10 December 2019 в 02:51
поделиться

print () по сути просто вызывает собственный диалог печати для данного окна.

Но, как вы думаете, он будет работать в любом окне или (i) фрейме.

, таким образом, если вы записываете контент во фрейм, вы можете затем вызвать это, чтобы напечатать его.

window.frameName.print();

обратите внимание на единственный недостаток (и его большой), это то, что он вызывает диалог печати ... а не предварительный просмотр печати окно ... таким образом, у пользователя действительно нет возможности увидеть, что они печатают, и / или масштабировать это, чтобы соответствовать своему принтеру / бумаге.

Я лично хочу, чтобы все браузеры реализовали следующее для решения вышеуказанной проблемы . ; -)

window.printPreview();
1
ответ дан 10 December 2019 в 02:51
поделиться

Если вы делаете это во время загрузки документа, вы можете использовать document.write , чтобы записать текущий документ, а затем распечатать его.

Если страница завершил загрузку, вы можете использовать функции для управления DOM или, желательно, использовать библиотеку, такую ​​как jQuery или Prototype , а затем распечатать текущий документ.

0
ответ дан 10 December 2019 в 02:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: