有没有解析word文档的js库
在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于“Program Files/Microsoft Office/OFFICE11/owssupp.dll”。
通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开、编辑Office文档。
(另,Office XP应该就已经包含这个ActiveX控件了。
)首先,用Script创建一个本地的对象:openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2"); // 为了兼容Office XP,可以创建“SharePoint.OpenDocuments.1”然后,调用openDocObj的相应的方法。
比如打开服务器上的一个Office文档:openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc");openDocObj对象会根据参数中不同的Office文档类型(.doc、.xls、.ppt)来打开不同的程序(Word、Excel、PowerPoint)。
ViewDocument()方法还有一个重载签名,可以让我们手工指定激活哪个程序来打开文档:openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc", 要激活的程序的ProgID);那么要打开Office程序在线编辑文件又如何?openDocObj.EditDocument("http://www.abc.com/documents/sample.doc");就可以直接激活Word,在Word里面编辑文档,然后直接点击Word里面的保存功能,就可以将文件保存会服务器上了。
注意:为了让Word能将编辑后的文档直接保存会服务器,访问Web站点的当前上下文的Windows Identity必须对服务器的相应目录(即“http://www.abc.com/documents”这个虚拟目录所对应的服务器上的物理路径)有相应的写权限,否则保存动作会失败。
编辑完成后,EditDocument()会返回一个bool值,来反映编辑操作是否成功。
我们还可以通过打开服务器上的一个文档模版,来创建一个新的文档:openDocObj.CreateNewDocument("http://www.abc.com/documents/sampleTemplate.dot", "http://www.abc.com/documents/");就可以使用“http://www.abc.com/documents/sampleTemplate.dot”这个模版来创建一个新的文档,默认新文档的保存地点是“http://www.abc.com/documents/”。
创建新文档时使用的程序取决于模版文件的类型(比如.dot模版会对应Word)。
新文档的保存同样需要注意权限问题。
CreateNewDocument()方法同样会返回一个bool值来反映操作是否成功。
CreateNewDocument()方法的第一个参数,除了可以使用一个模版的地址外,还可以直接指定为希望用来创建新文档的客户端程序的ProgID。
test_wordfunction Validator(){var openDocObj;openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2");openDocObj.EditDocument("C:/Inetpub/wwwroot/前言.doc");}</script>
JS、AJAX等实现:HTML/JSP页面中即时显示查询的数据,怎么写?
struts2 action 代码import java.io.IOException;import java.io.PrintWriter;public class AutoComplete extends CommonAction { /** * 用于实践ajax google 的样式 * 用于接收服务器端请求的 */ //抓取从页面穿过来的字符串 用于和服务器端的单词进行匹配 private String word ; public AutoComplete() { } public String onblurquery() throws Exception{ //保存要查询的东西 //注意ajax 中 这个所谓的视图层不返回页面 只返回数据 this.getRequestMap().put("word", word); //System.out.println("struts - > "+word); this.getResponse().setContentType("text/xml;charset=utf-8;"); return "toshow"; } public String getWord() { return word; } public void setWord(String word) { this.word = word; }}jsp 代码 google /*当文本没有被选中的时候就使用这个样式*/ .auto-1{ background-color: #FFCC99; color: gray; cursor: pointer; width: 100%; } /*当文本被选中的时候就是用这个样式*/ .auto-2{ background-color: #CCFF99; color: green; cursor: pointer; width: 100%; } google: jquery 代码 //表示当前被选中的节点 var highlightindex = -1; var timeoutId; $(document).ready(function (){ //alert("准备好了"); //保存文本输入框 var wordinput=$("#word"); //保存文本的 var wordinputOffset = wordinput.offset(); //弹出框应该等于在文本的下面 那么就是文本的宽等于div的宽 $("#auto").hide().css("border","1px solid #CDD2CB").css("position","absolute") .css("top",wordinputOffset.top+wordinput.height()+5+"px").css("left",wordinputOffset.left+"px").width(wordinput.width()+40+"px"); //给文本框添加键盘按下并谈起的实践 $("#word").keyup(function (event){ //处理键盘实践 var myEvent = event || window.event; //如果输入的是字母 应该是将文本中最新的信息发送到服务器 //如果是退格或是删除键 那么就将文本中最新的信息发送给服务器 var keyCode = myEvent.keyCode; if(keyCode >= 65 && keyCode 0){ if($("#word").val()==""){ $("#auto").hide(); //隐藏的时候就把节点重新的赋值 highlightindex = -1; }else{ $("#auto").show(); } }else{ $("#auto").hide(); //隐藏的时候就把节点重新的赋值 highlightindex = -1; } //alert(data); },"xml"); },500); }else{ $("#auto").hide(); //隐藏的时候就把节点重新的赋值 highlightindex = -1; } }else if(keyCode == 38 || keyCode == 40){ //如果是按得向上或是向下键 if(keyCode == 38){ //上 var autoNodes = $("#auto").children("div"); if(highlightindex!=-1){ autoNodes.eq(highlightindex).removeClass("auto-2").addClass("auto-1"); highlightindex--; }else{ highlightindex = autoNodes.length-1; } if(highlightindex==-1){ //如果修改过后的索引为-1 则索引到最后的节点 highlightindex = autoNodes.length-1; } autoNodes.eq(highlightindex).removeClass("auto-1").addClass("auto-2"); } if(keyCode == 40){ //下 var autoNodes = $("#auto").children("div"); if(highlightindex!=-1){ autoNodes.eq(highlightindex).removeClass("auto-2").addClass("auto-1"); } highlightindex++; if(...
str
展开全部 这个你需要在js解析之前先定义php代码去判断生成。
比如三个按钮,增加,删除,修改。
管理员有三个权限,普通用户就只有修改功能。
那么在定义的地方,不要直接写json,而是用php判断该用户的权限,如果有,就生成一个三个按钮的json,否则就是一个按钮的json。
这样就最简单了。
其它的都不变...
wordpress如何调用js文件??
一般都是直接在主题的header.php文件中直接引用,部分主题也会在主题的functions.php文件中通过WP自带的函数wp_enqueue_scripts来加载JS文件。
1、在主题header.php文件中直接引入文件,如<&#47;script>;或者<&#47;script>2、在主题的functions.php文件中引入文件,如function my_enqueue_scripts() {if( !is_admin ) { // 前台加载的脚本与样式表// 去除已注册的 jquery 脚本wp_deregister_script( 'jquery' );// 注册 jquery 脚本wp_register_script( 'jquery', get_template_directory_uri() . '/js/jquery/1.10.2/jquery-1.10.2.min.js', false, '1.0', false );// 提交加载 jquery 脚本wp_enqueue_script( 'jquery' );} } // 添加回调函数到 init 动作上add_action( 'init', 'my_enqueue_scripts' );
如何使用FLEX在线显示WORD文档 或PDF文件
一. 使用PDF2SWF准备好你的文档 首先要将PDF转成SWF,这步可以使用开源的SwfTools自动完成 1.下载安装 SwfTools,当前最新版本是0.92. 转换PDF到SWF,可以通过命令行的方式,例如将Paper3.pdf转换成Paper3.swf C:\SWFTools\pdf2swf Paper3.pdf -o Paper3.swf 二. 使用已经编译好的FlexPaper的flash版本浏览你的文档 下载并解压出已经编译好的FlexPaper zip文件包含一个例子文件叫做FlexPaperViewer.html,它向你展示了需要传给FlexPaper的 基本参数 var params = { SwfFile : "Paper.swf",Scale : 0.6 } swfobject.embedSWF("FlexPaperViewer.swf","cb","500","500","9.0.0","js/swfobject/expressInstall.swf", params);//SwfFile参数是你想显示的文件,Scale是0-1之间的数,表示显示的放大参数 复制你创建出来的swf和PDF2SWF到解压缩出的相同目录 确定你添加了FlexPaperViewer.swf 三. 在Flex中使用FlexPaper 1. 下载FlexPaper SWC,添加到你的Flex项目libs中2. 复制你用PDF2SWF创建的SWF到你的bin-debug目录,如Paper3.swf,添加FlexPaper组 件到你的flex代码中Xml代码 layout="absolute" width="800" height="500" xmlns:flexpaper="com.devaldi.controls.flexpaper.*"> Scale="1" SwfFile="Paper3.swf" /> 网友写的一个方法可以利用JAVA转化pdf为swf: [java] view plaincopy /** * 将pdf文件转化成swf文件 * @param fileName 文件的绝对路径 * @param destPath 目标路径 * @return -1:源文件不存在,-2:格式不正确,-3:发生异常,0:转化成功 * @author fanglm created on Jul 9, 2010 1:13:04 PM */ public static int ConvertPdfToSwf(String fileName,String destPath){ String destName = "",fileExt = ""; StringBuffer command = new StringBuffer(); fileExt = fileName.split("//.")[fileName.split("//.").length-1].toLowerCase(); try{ File file = new File(fileName); if(!file.exists()){//判断源文件是否存在 return -1; }else if(!fileExt.equals("pdf")){//判断文件是否是pdf格式的文件 return -2; } else{ String swftoolsPath = "D://SWFTools";//获取pdf转swf工具的路径 if(!swftoolsPath.substring(swftoolsPath.length()-1, swftoolsPath.length()).equals("//")){ swftoolsPath = swftoolsPath+"//"; //在目录后加 "/" } if(!destPath.substring(destPath.length()-1, destPath.length()).equals("//")){ destPath = destPath+"//"; //在目录后加 "/" } File destFile = new File(destPath); if(!destFile.exists()){//目标文件路径如果不存在,则创建目录 destFile.mkdirs(); } destName = file.getName().substring(0, file.getName().length()-4)+".swf";//目标文件名称 command.append(swftoolsPath).append("pdf2swf.exe ").append(fileName).append(" -o ").append(destPath).append(destName); Process pro = Runtime.getRuntime().exec(command.toString()); BufferedReader buffer = new BufferedReader(new InputStreamReader(pro.getInputStream())); while(buffer.readLine()!=null); return pro.exitValue(); } }catch (Exception e){ e.printStackTrace(); return -3; } } 如果遇到PDF2SWF转换只有一页的PDF文档,在FlexPaper不显示,在执行的命令后面加上“-T 9”转换成flash 9 格式即可解决。