`
zgqynx
  • 浏览: 1370704 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

打印(完整)

阅读更多
//不缓存


<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="0">



//正则匹配


匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 
匹配首尾空格的正则表达式:(^\s*)|(\s*$)(像vbscript那样的trim函数)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?



以下是例子:
利用正则表达式限制网页表单里的文本框输入内容:


//消除图像工具栏
[/html]
<IMG SRC="mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false"> 
or
<head>
<meta http-equiv="imagetoolbar" content="no">
</head>
[/html]
//取得控件得绝对位置(1)
以下是引用片段:

<script language="javascript"> 
function getoffset(e)

var t=e.offsetTop; 
var l=e.offsetLeft; 
while(e=e.offsetParent)

  t+=e.offsetTop; 
  l+=e.offsetLeft; 

var rec = new Array(1);
rec[0]  = t;
rec[1] = l;
return rec

</script>

//获得控件的绝对位置(2)


orect = obj.getBoundingClientRect();
orect.left
orect.



//打印分页


<p  style="page-break-after:always">page1</p>  
<p  style="page-break-after:always">page2</p>  



//设置打印
以下是引用片段:

<object id="factory" style="display:none" viewastext
  classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
  codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360"
></object>
<input type=button value=页面设置 onclick="factory.printing.PageSetup()">
<input type=button value=打印预览 onclick="factory.printing.Preview()">
 
<script language=javascript>
function window.onload()
{
   // -- advanced features
   factory.printing.SetMarginMeasure(2) // measure margins in inches
   factory.printing.SetPageRange(false, 1, 3) // need pages from 1 to 3
   factory.printing.printer = "HP DeskJet 870C"
   factory.printing.copies = 2
   factory.printing.collate = true
   factory.printing.paperSize = "A4"
   factory.printing.paperSource = "Manual feed"
   // -- basic features
   factory.printing.header = "居左显示&b居中显示&b居右显示页码,第&p页/共&P页"
   factory.printing.footer = "(自定义页脚)"
   factory.printing.portrait = false
   factory.printing.leftMargin = 0.75
   factory.printing.topMargin = 1.5
   factory.printing.rightMargin = 0.75
   factory.printing.bottomMargin = 1.5
}
function Print(frame) {
  factory.printing.Print(true, frame) // print with prompt
}
</script>
<input type=button value="打印本页" onclick="factory.printing.Print(false)">
<input type=button value="页面设置" onclick="factory.printing.PageSetup()">
<input type=button value="打印预览" onclick="factory.printing.Preview()"><br>
<a href="http://www.meadroid.com/scriptx/docs/printdoc.htm?static"  target=_blank>具体使用手册,更多信息,点这里</a>

//自带的打印预览


WebBrowser.ExecWB(1,1) 打开 
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口 
Web.ExecWB(4,1) 保存网页 
Web.ExecWB(6,1) 打印 
Web.ExecWB(7,1) 打印预览 
Web.ExecWB(8,1) 打印页面设置 
Web.ExecWB(10,1) 查看页面属性 
Web.ExecWB(15,1) 好像是撤销,有待确认 
Web.ExecWB(17,1) 全选 
Web.ExecWB(22,1) 刷新 
Web.ExecWB(45,1) 关闭窗体无提示 
<style media=print> 
.Noprint{display:none;}<!--用本样式在打印时隐藏非打印项目--> 
.PageNext{page-break-after: always;}<!--控制分页--> 
</style> 
<object  id="WebBrowser"  width=0  height=0  classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">    
</object>    
 
<center class="Noprint" >
<input type=button value=打印 onclick=document.all.WebBrowser.ExecWB(6,1)> 
<input type=button value=直接打印 onclick=document.all.WebBrowser.ExecWB(6,6)> 
<input type=button value=页面设置 onclick=document.all.WebBrowser.ExecWB(8,1)> 
</p> 
<p> <input type=button value=打印预览 onclick=document.all.WebBrowser.ExecWB(7,1)> 
</center>




//去掉打印时的页眉页脚
以下是引用片段:

<script  language="JavaScript">  
var HKEY_Root,HKEY_Path,HKEY_Key;
HKEY_Root="HKEY_CURRENT_USER";
HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";
//设置网页打印的页眉页脚为空
function PageSetup_Null()
{
try
{
         var Wsh=new ActiveXObject("WScript.Shell");
  HKEY_Key="header";
  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
  HKEY_Key="footer";
  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
}
catch(e){}
}
//设置网页打印的页眉页脚为默认值
function  PageSetup_Default()
{  
try
{
  var Wsh=new ActiveXObject("WScript.Shell");
  HKEY_Key="header";
  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P");
  HKEY_Key="footer";
  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d");
}
catch(e){}
}
</script>
<input type="button" value="清空页码" onclick=PageSetup_Null()>
<input type="button" value="恢复页码" onclick=PageSetup_Default()>

//无模式的提示框


function modelessAlert(Msg)
{
   window.showModelessDialog("javascript:alert(\""+escape(Msg)+"\");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
}




//下载文件


function DownURL(strRemoteURL,strLocalURL)
{
try
{
  var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP");
  xmlHTTP.open("Get",strRemoteURL,false);
  xmlHTTP.send();
  var adodbStream=new ActiveXObject("ADODB.Stream");
  adodbStream.Type=1;//1=adTypeBinary
  adodbStream.Open();
  adodbStream.write(xmlHTTP.responseBody);
  adodbStream.SaveToFile(strLocalURL,2);
  adodbStream.Close();
  adodbStream=null;
  xmlHTTP=null;
  
}
catch(e)
{
  window.confirm("下载URL出错!");
}
//window.confirm("下载完成.");
}



//检验连接是否有效


function getXML(URL) 
{
var xmlhttp = new ActiveXObject("microsoft.xmlhttp");
xmlhttp.Open("GET",URL, false); 
try

  xmlhttp.Send();
}
catch(e){}
finally 
{
  var result = xmlhttp.responseText;
  if(result) 
  {
   if(xmlhttp.Status==200)
   {
    return(true);
   }
   else 
   {
    return(false);
   }
  }
  else 
  {
   return(false);
  }
}
}



//检查网页是否存在


function CheckURL(URL)
{
  var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  xmlhttp.Open("GET",URL, false);
  try
  { 
    xmlhttp.Send(); 
    var result = xmlhttp.status;
  }
  catch(e) {return(false); }
  if(result==200)
  { 
    return true;
  }
  xmlhttp = null;
  return false;
}




//禁止FSO


1.注销组件
regsvr32 /u scrrun.dll
2.修改PROGID
HKEY_CLASSES_ROOT\Scripting.FileSystemObject
Scripting.FileSystemObject
3.对于使用object的用户,修改HKEY_CLASSES_ROOT\Scripting.
分享到:
评论

相关推荐

    springboot log4jdbc 打印完整sql

    SpringBoot Log4jdbc 打印完整 SQL 详解 在 SpringBoot 项目中, Logging 是一个非常重要的模块,对于项目的维护和问题排查具有非常重要的作用。 Log4jdbc 是一个 Logging 工具,能够打印完整的 SQL 语句,包括参数...

    uni-app蓝牙打印+微信小程序蓝牙打印完整demo

    1.uni-app蓝牙打印+微信小程序蓝牙打印完整demo运行版__2.esc+tsc+cpcl三种指令的封装和测试代码__3.代码下载直接加入HBuilder X和微信开发者工具可直接调试运行.zip

    idea mybatislog 日志打印 打印完整sql

    本文将详细介绍如何在IntelliJ IDEA中配置MyBatis日志打印,以便完整地输出SQL。 首先,我们需要了解MyBatis的日志系统。MyBatis支持多种日志实现,包括Log4j、Logback和Java内置的日志API。默认情况下,MyBatis会...

    winform的报表打印完整详细实例.rar

    总的来说,"winform的报表打印完整详细实例.rar"这个资源提供了一个全面的学习路径,涵盖了从数据获取、报表设计到打印实现的各个环节。通过学习这个实例,开发者不仅可以掌握WinForm中报表的基本操作,还能了解到...

    STM32F1单片机+MPU6050+HMC5883L+MS5611+四元数欧拉角姿态解算+曲线打印完整工程代码

    STM32F1单片机+MPU6050+HMC5883L+MS5611+四元数欧拉角姿态解算+曲线打印完整工程代码。 STM32F1单片机+四元数欧拉角姿态解算+MPU6050+HMC5883L+MS5611+曲线打印完整工程代码. 燕骏编程规范: ...

    数据结构1800题word打印完整版

    本资源“数据结构1800题word打印完整版”提供了一套全面的数据结构练习题,对于学习者深入理解和掌握数据结构的知识大有裨益。 首先,数据结构主要包括数组、链表、栈、队列、树、图等基本类型。这些结构各有特点,...

    java打印完整攻略

    根据给定的信息,本文将深入探讨Java打印技术的不同方面,特别是使用不同的Java版本中的API来进行打印的方法。文章将从理解基础的打印概念入手,逐步深入到具体的API使用案例。 ### Java打印基础 Java中的打印机制...

    uni-app蓝牙打印+微信小程序蓝牙打印完整demo运行版

    本文将详细讲解基于uni-app和微信小程序的蓝牙打印技术,以及如何使用ESC/POS、TSC和CPCL三种指令进行封装和测试。首先,uni-app是一个多端开发框架,能够帮助开发者一次编写,多端运行,包括微信小程序、H5、App等...

    信息系统项目管理师方便打印完整版讲义.pdf

    信息系统项目管理师方便打印完整版讲义.pdf

    MyBatis插件,包含Mapper接口和xml跳转、打印完整sql日志插件

    MyBatis插件,包含Mapper接口和xml跳转、打印完整sql日志插件

    新概念英语第三册单词归纳打印完整版.doc

    新概念英语第三册单词归纳打印完整版.doc

    STM32F1单片机+四元数欧拉角姿态解算+MPU6050+HMC5883L+MS5611+曲线打印完整工程代码

    STM32F1单片机+四元数欧拉角姿态解算+MPU6050+HMC5883L+MS5611+曲线打印完整工程代码. 燕骏编程规范: https://download.csdn.net/download/zzw5945/10397028 燕骏串口打印曲线上位机: ...

    java打印html

    首先,我们要了解Java中的`java.awt.print`包,这个包提供了用于打印的基本接口和类。其中,`PrinterJob`类是核心,它负责管理和执行打印任务。要打印HTML内容,我们需要将其转换为可打印的形式,如PostScript或PDF...

    mybatis-plus配置控制台打印完整带参数SQL语句的实现

    在开发过程中,为了方便调试和优化SQL语句,有时我们需要在控制台打印出完整的、带有参数的SQL语句。本文将详细介绍如何在MyBatis-Plus中配置控制台打印这样的SQL。 首先,问题背景是开发人员在编写SQL语句时,通常...

    打印JdbcTemplate执行sql

    这篇博客文章的标题"打印JdbcTemplate执行sql"主要涉及如何在使用`JdbcTemplate`时,追踪并打印出执行的SQL语句,这对于调试和性能分析非常有帮助。接下来,我们将深入探讨`JdbcTemplate`的工作原理以及如何实现SQL...

    ideal mybatis打印sql插件

    把 mybatis 输出的sql日志还原成完整的sql语句。 将日志输出的sql语句中的问号 ? 替换成真正的参数值。 通过 "Tools -&gt; MyBatis Log Plugin" 菜单或快捷键 "Ctrl+Shift+Alt+O" 启用。 点击窗口左边的 "Filter" ...

    sql语句完整带参数输出打印插件【就一个jar包,超级好用】

    资源中包含了一个可以打印sql最终执行的语句的jar包,说明中描述了具体的使用方法,将此jar包加入到项目的classpath构建路径下之后,直接修改数据库操作的驱动类就可以打印出完整的sql语句了,是开发者的调试利器,...

    eclipse开发java使用mybatis打印不带问号的可执行sql

    本人开发人员,平常也是在CSDN下载资料,现在不需要积分的少了,所以我也得赚点积分,绝对提高你的开发效率。eclipse开发java使用mybatis打印不带问号的可执行sql

    LLVM Cookbook(高清非打印完整版)

    《LLVM Cookbook》以任务驱动的方式,带领读者编写基于LLVM 的编译器前端、优化器、后端。通过丰富的实例,读者能够从中理解LLVM 的架构,以及如何使用LLVM 来编写自己的编译器。 相比于传统的介绍编译技术的书籍,...

Global site tag (gtag.js) - Google Analytics