2013-02-15 116 views
4

我正在寻找在我的页面上提供一个按钮,单击时,将复制(excel格式)的数据到用户剪贴板,他们能够粘贴在由excel分隔的值columms。这是可能的,也许jquery?我对OOP有一个理解和经验。将Excel格式的数据复制到剪贴板从网络

任何帮助将是伟大的。

+0

是否需要将它保存到剪贴板?一旦他们点击按钮可以自动给他们的页面在Excel中下载的选项?这个选项会容易得多。 – 2013-02-15 03:16:23

+0

是的,这会更容易,但不幸的是不会有效。我们发现这种技术是复制和粘贴大量冗余数据,并正在研究如何获取内容并将其输入。数据只能通过选择某些元素值进行严格格式化。 – btaylor507 2013-02-15 03:46:35

回答

3

这似乎是很难找到的JS一个简单的解决方案是跨浏览器(这是其他浏览器简单的IE浏览器,但没有),所以你可以看看ZerClipboard这是一个使用JavaScript和Flash一个很好的解决方案。

ZeroClipboard

+0

感谢您的信息。不胜感激。这是一个本地网络应用程序,我们所有的用户都使用IE。我想到的是能够通过id获取活动的浏览器窗口数据并将其复制到剪贴板。我也在研究Excel中的VBA Grab Active Window。对不起,如果这可能有点混乱。 – btaylor507 2013-02-15 03:34:16

+0

因此,也许你可以尝试'clipboardData.setData(“Text”,s);'应该复制你的文本(首先检查if(window.clipboardData && clipboardData.setData)',以验证函数是否存在)。 – MatRt 2013-02-15 04:08:12

+0

我认为这会让我开始。非常感谢你!真的意味着很多。我知道足够让我陷入麻烦,因为他们说:) – btaylor507 2013-02-15 22:49:01

0
function ClipBoard() 
{ 
var tab  = " "; 
var ticket = $('#Userid').text(); 
var queue = $('#queue').text(); 
var customer = $('#customer').text(); 
var res  = $('#res').text(); 

var str  = ticket+tab+queue+tab+customer+tab+res; 

$('#holdtext').append(str); 
Copied = holdtext.createTextRange(); 
Copied.execCommand("Copy"); 
} 

使用JQuery并且每个变种之间在-插入凸片为Excel将格式化。尽管这只适用于IE。

<TEXTAREA ID="holdtext" STYLE="display:none;"></TEXTAREA> 
<span id="ticket">767-45</span><br /> 
<span id="queue">john_doe</span><br /> 
<span id="customer">Citibank</span><br /> 
<span id="res">jan_doe</span><br /> 
<BUTTON onClick="ClipBoard();">Copy to Clipboard</BUTTON>