有没有一种方法可以使用jQuery或Javascipt获取内联<style>块的标记,以使其包含在打印标记中?

我有一个HTML表单,我想在完成后将其打印出来。我可以对其进行某种处理,以将表单元素(输入,文本区域,单选按钮等)转换为跨度,div和值。但是,我希望在用于打印的HTML中包含表单的样式块。如果我不包括样式块,那么表单将不会按照HTML页面上的格式打印。

关于标记名更改,只要设置了样式表以使其看起来可用于打印,则类似的操作对于输入也适用。对其他表单元素执行相同的操作,即可制作出漂亮的打印纸。

$(“#previewform”)。on(“ click”,function(e){     $(“ .inputtospan”).each(function(index){         $(this).replaceWith(''+ $(this).val()+'');     }); });

是否有一种获取样式块的方法,例如

<style>
. . . .
. . . .
</style>

使用jQuery或Javascript将代码块附加到传递的用于打印的HTML。这对于使用支持样式表的客户端的电子邮件也可以吗?

以使用iFrame的示例为例,似乎确实会返回样式块的内容:

$("#viewerframe").contents().find("#mriform").prev().html()

尽管同样适用于父页面。在这种情况下,样式块将紧挨表单放置,因此它是前一个兄弟。

style = $("#mriform").prev()[0].outerhtml;

可以获取样式块的代码,并且只要我通过要打印的样式+(“ #mriform”)。html(),它似乎就可以在打印时呈现。

只是想知道是否存在普通的JS方式或其他方式来管理此类问题。我尝试在样式声明中包含一个id或其他属性,但这不起作用,尽管在样式块紧接表单工作之前或之后使用prev()或next()时也是如此。我宁愿不必将块包含在相对于表单的可访问位置。

还有另一个SO问题可以解决此问题:

SO Post

尽管我确实喜欢创建脚本来完成同一服务器端的想法,但是可以使用jQuery,JS来处理该表单并将其转换为外观美观的表单。只需将输入元素标签转换为跨度,将文本区域转换为div,将标签转换为跨度等,就可以有效地实现效果,并且可以动态完成。

ingkao84 回答:有没有一种方法可以使用jQuery或Javascipt获取内联<style>块的标记,以使其包含在打印标记中?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3155622.html

大家都在问