我为Firefox创建了一个javascript插件,用于操作剪贴板并将某些文本粘贴到网页上的任何文本框中 . 在这个网页上,我有几个具有相同ID的文本框 .
现在我需要同时将文本粘贴到所有这些文本框中 . 例如,如果我将某些内容粘贴到第一个(或任何其他)文本框中,它将自动粘贴到所有其他文本框中 .
我没有在互联网上找到任何关于它的例子或经验 . 所以,我会很乐意提出任何建议/解决方案 .
几个文本框?考虑到 <input type="text" /> 的所有内容,您可以使用:
<input type="text" />
// Select all the textboxes. textBoxes = document.querySelectorAll("input:text"); // Iterate each of them. for (i in textBoxes) { // Add a value for each. textBoxes[i].value = ''; }
您可以在每个输入上应用一个类 .
<input class="myClass" type="text" id="selector"> <input class="myClass" class="" type="text" id="selector"> <input class="myClass" type="text" id="selector"> <input class="myClass" type="text" id="selector"> $('input').keyup(function () { var key = this.value; $('.myClass').val(key); });
JSFiddle:http://jsfiddle.net/o8308q48/
这适用于Firefox .
在每个粘贴事件中,我们将每个输入的值设置为this.value(这指的是粘贴事件完成的输入)
var inputs = document.querySelectorAll('input, textarea'); for (var i = 0; i < inputs.length;i++){ inputs[i].addEventListener("paste", function(){ for (var j = 0; j < inputs.length;j++) inputs[j].value = this.value; }, false); }
您也可以使用keyup事件并控制当“控制键”或osx中的“命令”同时按下“V”时,但是当您右键单击并在上下文中单击“粘贴”时它将避免菜单 . 通过事件粘贴,您可以双向覆盖 .
3 回答
几个文本框?考虑到
<input type="text" />
的所有内容,您可以使用:您可以在每个输入上应用一个类 .
JSFiddle:http://jsfiddle.net/o8308q48/
这适用于Firefox .
在每个粘贴事件中,我们将每个输入的值设置为this.value(这指的是粘贴事件完成的输入)
您也可以使用keyup事件并控制当“控制键”或osx中的“命令”同时按下“V”时,但是当您右键单击并在上下文中单击“粘贴”时它将避免菜单 . 通过事件粘贴,您可以双向覆盖 .