通过js脚本复制网页上的一个表格的不错实现方法
发布时间:2024-04-23 09:16:19
标签:通过js脚本复制网页上的一个表格的不错实现方法
今天有人问我一个问题:如何通过js脚本复制网页上的一个表格?看起来似乎比较有难度,不过还是搞定了,顺便把解决这个问题的过程记录下来,希望能对写脚本的兄弟们有所帮助。
以前没有写过这种脚本,不过想起来前不久刚看到一个脚本可以实现全选HTML编辑器的内容,于是想到一个方案:使用脚本将该表格插入HTML编辑器中,然后全选HTML编辑器内容,执行HTML编辑器的复制命令,即可实现复制表格功能,很快搞定:
<INPUT TYPE="button" value="复制测试表格" onclick="CopyTable()"> <INPUT TYPE="button" value="将剪切板内容输出到编辑器中" onclick="PastClipboardData()"> 测试 <TABLE border="1" id="oTable"> <TR> <TD>测试表格</TD> <TD>测试表格</TD> </TR> <TR> <TD>测试表格</TD> <TD>测试表格</TD> </TR> </TABLE>文字 <iframe id="editor" src="about:blank"></iframe> <SCRIPT LANGUAGE="JavaScript"> </SCRIPT>
这样子功能是实现了,不过觉得有点不爽,必须借助HTML编辑器才可,不过从全选HTML编辑器的代码中,注意到了createTextRange()方法,这个方法以前就有用过,只是一直没深入研究过。在Msdn中发现只有Body、TextArea等对象支持createTextRange()方法,继续在msdn中仔细查阅了一下,createTextRange()返回的是一个 TextRange 对象,继续查阅 TextRange 对象,发现其有很多方法,先试了试findText方法,发现只能选中文字,不能选中对象,继续找,终于发现了moveToElementText就是我们要找的方法:
<INPUT TYPE="button" value="选中测试表格" onclick="CopyTable()"> 测试 <TABLE border="1" id="oTable"> <TR> <TD>测试表格</TD> <TD>测试表格</TD> </TR> <TR> <TD>测试表格</TD> <TD>测试表格</TD> </TR> </TABLE>文字 <SCRIPT LANGUAGE="JavaScript"> </SCRIPT>
类似于这样的问题,可以想想以前有无写过见过类似的代码,如果没有也可以网上用关键字搜索一把,直接利用现有知识解决。msdn是一个非常好的宝库,就如小学学汉字的字典一样,从里面可以找到绝大部分所需要的资料。正应了那句话,自己动手丰衣足食:)


猜你喜欢
- 可能很多人遇到过这个错误,当使用setup.py安装python2.7图像处理模块PIL时,python默认会寻找电脑上以安装的vs2008
- 什么是进程的通信这里举一个例子接介绍通信的机制:通信 一词大家并不陌生,比如一个人要给他的女友打电话。当建立了通话之后,在这个通话的过程中就
- Microsoft office Access Database Engine 错误 '80040e14' Insert I
- 本文介绍了asp中 adpbe.stream 的语法,各种参数使用说明,方便大家查阅。更多请看:VBScript 速查手册(语言参考) ch
- 这篇文章主要介绍了Python箱型图绘制与特征值获取过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需
- 目录楔子使用方法创建一个文件创建一个目录重命名将文件1.txt移动到子目录test_child, 所以此时会伴随一个创建、一个删除以及一个修
- 在网络可靠性中,一种较为经典且在实践中更为常用的可靠度计算便是二终端可靠度,即给定网络拓扑结构与边可靠度(假定节点完全可靠),计算网络中指定
- 本文实例讲述了php函数serialize()与unserialize()用法。分享给大家供大家参考。具体方法如下:该实例主要讲述了php函
- 一.python读取txt文件最简单的open函数:# -*- coding: utf-8 -*-with open("test.
- 本文实例演示了Python生成pdf文件的方法,是比较实用的功能,主要包含2个文件。具体实现方法如下:pdf.py文件如下:#!/usr/b
- 具体错误:UnicodeEncodeError: 'latin-1' codec can't encode char
- 最新MySql8.27主从复制以及SpringBoot项目中的读写分离实战1、MySql主从复制MySQL主从复制是一个异步的复制过程,底层
- 1、首先停止正在运行的MySQL进程 Linux下,运行 killall -TERM mysqld Windows下,如果写成服务的 可以运
- 那么,现在如果给出一个权限编号,要去检索出用后这个权限的用户集合,就会需要在逗号分隔的多个权限编号中去匹配给出的这个权限编号。如果使用lik
- 1. RequestDispatcher.forward()在服务器端起作用,当使用forward()时,Servlet engine传递H
- 一、安装go get github.com/sirupsen/logrus二、使用1、当做标准库使用logrus实现了标准库log的方法,可
- 前言正常图片转化成素描图片无非对图片像素的处理,矩阵变化而已。目前很多拍照修图App都有这一功能,核心代码不超30行。如下利用 Python
- 加密解密字符串的asp函数,如用于ASP链接地址栏参数的加密,看代码就明白。比如:show.asp?id=DB26538FA54C70E1E
- 注入漏洞代码和分析<?php function customError($errno, $errstr, $errfile, $err
- 前言ThinkPHP,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的开源轻量级PHP框架。随着框架代码量的增加,一些潜在的威胁也逐渐暴