js:关于自动生成字符串,类似于会员的充值的提取码可以随机生成,并有复制提取字符串功能

关于js实现文本复制功能:

原理:通过”document.execCommand("Copy"),将选中的文本复制到剪切板。

        此方法只对<input>和<textarea>有效

        要复制其他文本,想办法将<textarea>中的value变成想复制的内容,

        然后通过select()方法选择文本,再调用document.execCommand('copy")。

html部分

<div class="d">
    <span class="d1" id="code"></span>
    <textarea id="copyTxt" cols="30" rows="10"></textarea>
    <sapn class="d2" style="cursor: pointer" onclick="createCode()" id="btn">复制</sapn>
</div>

css部分:

//隐藏文本框
#copyTxt {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: -20;
}
//关于这个文本框框结构的样式,仅参考
.d{
        display: flex;
        margin: 10px auto;
        background-color:#fcfcfc;
        width: 370px;
        height: 43px;
        color:rgb(223, 32, 18);
        border-radius: 8px;
    }
    .d1{
        width: 300px;
        color: #e22d15;
        display: flex;
        text-align: center;
        align-items: center;
        justify-content: center;
    }
    .d2{
        display: flex;
        background-color: #e22d15;
        color: #fcfcfc;
        width: 100px;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 16px;
    }

 js部分:

$(document).ready(function(){

window.onload = function() {
    createCode()
    }

   var code ; //在全局定义验证码         
   function createCode(){
        code = "";   
        var codeLength = 20;//验证码的长度  
        var checkCode = document.getElementById("code");   
        var random = new Array(0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G',
        'H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y',
        'Z');//随机数  
        for(var i = 0; i < codeLength; i++) {//循环操作  
           var index = Math.floor(Math.random()*36);//取得随机数的索引(0~35)  
           code += random[index];//根据索引取得随机数加到code上  
       }  
       checkCode.value = code;//把code值赋给验证码  
   //显示在文本中
    document.getElementById("code").innerText= code;
   }
   btn.onclick = function () {
	copyTxt.value = document.getElementById("code").innerText	//将文本内容赋值到文本框
	console.log(copyTxt.value)
    copyTxt.select()						//选择文本框中内容
	document.execCommand('copy')			//调用复制文本方法
	// alert('复制成功')
}

})

 结果图:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值