ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# jq克隆 百度的: 如题,前端操作经常需要ajax异步刷新html页面数据。有时候js里面拼接html代码很麻烦。 因此选择一个div克隆并改变一些值就省了很多事。这个div也可以提前写在html里面hide() 下面是js代码:这个被克隆元素为了不影响表单的提交,最好放在form外面。 ~~~ //追加节点,增加图片信息 var index=1000; $(document).on('click','#addPicture',function(){ index+=1; var strVar=$("#addDivNode").clone(true); //克隆元素,注意不是javascript的cloneNode() strVar.attr("id","addDiv"+index); //改变克隆元素id,注意不是setAttribute() var lable=strVar.find("#dinfoadd"); //根据id查找子元素 var file=strVar.find("#0"); var img=strVar.find("#img_0"); lable.attr("id","dinfoadd"+index); //改变克隆子元素节点一 file.attr("id",index); //改变克隆元素子节点二 img.attr("id","img_"+index); //改变克隆子元素节点三 $("#addDiv"+index).style="display: block"; $("#addDiv").before(strVar); }); ~~~ 自己写的: ~~~ // 选中升级条件类型 $(".condition").click(function () { var id_str = $(this).attr('id'); var unit = $(this).data('unit'); if ($(this).hasClass('condition_select')) { //存在就去掉 $(this).removeClass("condition_select"); $('#del_'+id_str).remove(); } else { //不存在就加上 $(this).addClass("condition_select"); var strVar=$("#copy_del_condition").clone(true); //克隆元素,注意不是javascript的cloneNode() strVar.attr("id","del_"+id_str); //改变克隆元素id,注意不是setAttribute() strVar.find(".unit").text(unit); strVar.find(".del_btn").attr('data-id_str',id_str); var lable_str=strVar.find("label span"); //根据id查找子元素 lable_str.text($(this).text()); strVar.show(); $(this).parents('.row').after(strVar); console.log(unit) } }); ~~~