首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表单克隆唯一id

表单克隆唯一id
EN

Stack Overflow用户
提问于 2012-09-10 21:54:42
回答 1查看 188关注 0票数 2

我想克隆一个表单,并且不会对该表单的修改影响原始表单。如何为表单的每个实例提供唯一的ID,使元素不会重复?

代码语言:javascript
复制
$(document).ready(function() {
    // shows / hides results based on selection
    $(".categories-select").live("change", function() {
        if ($(this).val() == 'dinner') {
            $('.dinner').removeClass('hide');
            // toggles dinner results, sub menus
            $(this).parent('.controls').find('.restaurant-submenu-select').removeClass('hide');
        }
    });    

    // Duplicates category select menu 
    $(".add-activity").click(function() {
        $(".activity-category")
                       .clone()
                       .removeClass('activity-category')
                       .appendTo("#we-want-to")
                       .find('.restaurant-submenu-select')
                       .addClass('hide');
    });    

    $(".add-activity-alternate").click(function() {
        $(".activity-category-alternate")
                       .clone()
                       .removeClass('activity-category-alternate')
                       .appendTo("#we-want-to")
                       .find('.restaurant-submenu-select, .results-table')
                       .addClass('hide');
    });
});

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-10 21:59:09

在克隆时,还要添加一个动态id

代码语言:javascript
复制
var id = 0;

(function() {
    yourClone.attr('id', 'something-' + id);
    id++
});

在您的代码中,类似于:

代码语言:javascript
复制
$(document).ready(function() {

    var id = 0;

    // shows / hides results based on selection
    $(".categories-select").live("change", function() {
        if ($(this).val() == 'dinner') {
            $('.dinner').removeClass('hide');
            // toggles dinner results, sub menus
            $(this).parent('.controls').find('.restaurant-submenu-select').removeClass('hide');
        }
    });    

    // Duplicates category select menu 
    $(".add-activity").click(function() {
        $(".activity-category")
                       .clone()
                       .removeClass('activity-category')
                       .appendTo("#we-want-to")
                       .find('.restaurant-submenu-select')
                       .addClass('hide')
                       .attr('id', 'something' + id);
        id++
    });    

    $(".add-activity-alternate").click(function() {
        $(".activity-category-alternate")
                       .clone()
                       .removeClass('activity-category-alternate')
                       .appendTo("#we-want-to")
                       .find('.restaurant-submenu-select, .results-table')
                       .addClass('hide')
                       .attr('id', 'something' + id);
        id++
    });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12353171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档