jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Jquery clone,替换id和name属性中的number大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我意识到这个问题类似于之前被问过的一些问题而且我可能没有得到它,因为它是晚上9点,但是我想知道如何解决这个问题.我知道我哪里出错我只是不知道如何解决它:

我正在克隆一个包含4个选择框的表行,我想克隆id和名称,但是将id增加1.这就是我现在所拥有的.

$(document).on("click","#new_item",function() {
    var rowCount = $("#widget_location_options tbody>tr:last select").attr("id").match(/\d+/);
    var rowCount1 = rowCount*1 + 1;
    var row = $("#widget_location_options tbody>tr:last").clone(true);
    $("select option:selected",row).attr("selected",false);
    $("select",row).attr("name",$("select",row).attr("name").replace(/\d+/,rowCount1) );
    $("select",row).attr("id",row).attr("id").replace(/\d+/,rowCount1) );
    row.insertAfter("#widget_location_options tbody>tr:last");
});

问题在于它正在使用id&第一个选择的名称并正确递增id,但将其应用于所有选择不是我想要的.

为清楚起见,我正在克隆的行的HTML如下所示:

<>

希望有人可以指出我在哪里可怕的错!

非常感谢

最佳答案
@Mark F,你给了我一个正确方向的暗示 – 谢谢.实际解决方案如下所示:

$(document).on("click",function() {
    ...

    $(row).find("select").each(function(){
        $(this).attr("name",$(this).attr("name").replace(/\d+/,rowCount1) );
    });
    $(row).find("select").each(function(){
        $(this).attr("id",$(this).attr("id").replace(/\d+/,rowCount1) );
    });


    ...
});

令人惊讶的是,一个美好的夜晚睡觉,并在正确的方向轻推可以实现.

再次感谢.

大佬总结

以上是大佬教程为你收集整理的Jquery clone,替换id和name属性中的number全部内容,希望文章能够帮你解决Jquery clone,替换id和name属性中的number所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: