javascript - WrappInner 嵌套要附加的项目,而克隆作为对象返回

标签 javascript jquery

我正在尝试克隆现有对象并将其包装到 <li>然后获取该复选框的 value 属性并将其转换为字符串。

不幸的是,我无法弄清楚,首先,当我尝试克隆它时,它作为一个对象返回;其次,我无法用 <li> 正确包装。标签,我尝试附加的所有项目都被嵌套到另一个级别。

你可以在这里看到我的 fiddle :http://jsfiddle.net/2FLkS/1/

这是我正在工作的代码:

$('document').ready(function(){
    var list1 = $('#list1 .wrap-item');
    list1.click(function(){
        var cloneItem = $(this).find('input[type=checkbox]').clone();
            cloneItem = cloneItem + cloneItem.prop('value');
        $("#selected-items").append(cloneItem).wrapInner('<li></li>');
    })
});

最佳答案

试试这个:

<div id="list1">
    <div class="wrap-item">
        <label>
            <input type="checkbox" name="water" value="Water Element">Water</label>
    </div>
    <div class="wrap-item">
        <label>
            <input type="checkbox" name="water" value="Fire Element">Fire</label>
    </div>
    <div class="wrap-item">
        <label>
            <input type="checkbox" name="water" value="Earth Element">Earth</label>
    </div>
</div>
<div id="list2">
    <ul id="selected-items"></ul>
</div>
$('document').ready(function () {
    $('#list1 .wrap-item input').click(function () {
        var copy = $(this).parent().clone(),
            input = $(copy).find('input'),
            text = input[0].nextSibling.nodeValue,
            newText = input.val();
        input[0].nextSibling.nodeValue = newText;
        $('#selected-items').append($(copy).wrap('<li></li>').parent());
    })
});

<强> jsFiddle example

关于javascript - WrappInner 嵌套要附加的项目,而克隆作为对象返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24962844/

相关文章:

jquery - 如何将元素粘贴到页面滚动的同一位置?

javascript - Mocha 超时后 Promise 解决

jquery - 我如何让这个导航在 iphone 和 ipad 上工作,尽管它是响应式的

javascript - 简单地将数字的平方相加

javascript - Sench Touch 2 动态获取容器数据/存储

javascript - 使弹出窗口按照当前日期显示

javascript - 如何更新多张图片的 'src'属性?

javascript - bootstrap flex 全宽元素,内容对齐

javascript - 在 jquery bootstrap 数据表中显示 NaN 到 NaN

javascript - 如何将 TEMPLATE 元素附加到 shadow dom?