I have a textbox & button which looks like this:
<div class="col-xs-11" style="padding:20px 0 ">
<input type="text" class="form-control txtKeywords" id="txtKeyw" style="margin-bottom:10px; height:45px;" maxlength="80" placeholder="Click on keywords to combine your title">
<button type="submit" class="btn btn-space btn-success btn-shade4 btn-lg copyToClipboard">
<i class="icon icon-left s7-mouse"></i> Copy to Clipboard
/button>
And when the user clicks the button copy to clipboard, I'd like to copy the contents of the textbox into the clipboard like this:
$(document).on("click", ".copyToClipboard", function () {
copyToClipboard("txtKeyw");
successMessage();
});
Where the definition of the copyToClipboard
function is:
function copyToClipboard(element) {
var $temp = $("<input>");
$("body").append($temp);
$temp.val($(element).text()).select();
document.execCommand("copy");
$temp.remove();
}
But when I do this, nothing happens -- no values are copied to clipboard from the textbox... What am I doing wrong here?
MORE INFORMATION:
- This happens in both Chrome 59 64-bit and Firefox 54 32-bit.
successMessage()
is called and displayed in the browser.- Adding
#
in front of the element's ID does not resolve the issue.
successMessage()
get called? DoescopyToClipboard()
run? – Gelid#
before the"txtKeyw"
when you pass it into your function. – Gelid