如何复制警报框的文本

时间:2013-07-11 10:57:00

标签: javascript

我使用下面的代码将文档的路径写入警告框。

var oArg = new Object();
oArg.Document = $(t).attr("path") + str + "/" + $(t).attr("name");
alert(oArg.Document);

假设该消息为:“documents/files/img/stack.jpg

我只想用一个按钮复制这个文本。对于Chrome,Ctrl + C可以正常使用,但对于IE,Ctrl + C会复制警报框中的所有内容。

如何使用按钮仅复制邮件?

Ctrl + C的工作原理如下:

  • Chrome - 效果很好。
  • Internet Explorer - Works,但您可以获得额外的文字。标题和确定按钮文本也会被复制,还有一串破折号。这几乎不是你想要的。
  • Firefox - 根本不起作用您必须先选择文本才能复制它。

3 个答案:

答案 0 :(得分:66)

您可以做的是向用户提示文字,并要求他们复制。就这样:

prompt("Copy to clipboard: Ctrl+C, Enter", oArg.Document);

因为如果您向提示提供文本,则会自动选中该文本。这适合你吗?

答案 1 :(得分:18)

当出现带有短信的警告信息框时,只需按 CTRL + C 即可复制您的信息,然后您可以将其粘贴到任意位置,无需编写或使用任何内容获取文本的其他方法。

答案 2 :(得分:8)

我发现,至少在Chrome中,警报框文本实际上是可选择的 - 当文本不包含任何换行符时(即" \ n"。)

我不知道为什么会这样,但我之前必须使用这个技巧来快速选择提示。 (你也可以使用prompt("please press ctrl+c to copy the text below", "text to copy"),但这通常看起来更糟)