【问题标题】:how to delete nested array object?如何删除嵌套数组对象?
【发布时间】:2017-04-25 17:41:18
【问题描述】:

how to Delete red Mark item

我添加了我的 JavaScript 代码 ...我不生成嵌套数组对象删除函数任何人都可以帮助我

如何删除nestobj:

“值”:“10”

“值”:“20”

“值”:“20”

<script>
$(function () {
    var tr;
    var obj = [{ obj1: { "name": "v1", nestobj: [{ "value": "10" }, { "value": "20" }, { "value": "20" }] } }];

    obj.push({ obj1: { "name": "v2", nestobj: [{ "value": "abc" }, {"value": "xyz"}] } });


    for (var i = 0; i < obj.length; i++)
    {
        tr = $('<tr/>');
        tr.append("<td>" + obj[i].obj1.name + "</td>")
        $('tbody').append(tr);


        for (var j = 0; j < obj[i].obj1.nestobj.length; j++)
        {                
            tr.append("<p>" + obj[i].obj1.nestobj[j].value + " <input type='submit' value='Delete' onclick='&quot;);'> </p>")
            $('tbody').append(tr);

        }       
        tr.append("<td>" + obj[i].obj1.nestobj.length + " <input type='submit' value='Remove All' onclick='&quot;);'> </td>")
        $('tbody').append(tr);

    }
});

【问题讨论】:

  • 欢迎来到 Stack Overflow!请带上tour,四处看看,通读help center,尤其是How do I ask a good question?
  • 您能否将这段代码作为文本粘贴到此处,以便我们更轻松地对其进行编辑?
  • 请点击[Javascript代码]标签@gyre
  • 是的,我添加了我的代码,请查看它@gyre

标签: javascript c# asp.net arrays asp.net-mvc


【解决方案1】:

改变你的功能如下:

$(function () {
var tr;
var obj = [{ obj1: { "name": "v1", nestobj: [{ "value": "10" }, { "value": "20" }, { "value": "20" }] } }];

obj.push({ obj1: { "name": "v2", nestobj: [{ "value": "abc" }, {"value": "xyz"}] } });


for (var i = 0; i < obj.length; i++)
{
    tr = $('<tr/>');
    tr.append("<td>" + obj[i].obj1.name + "</td>")
    $('tbody').append(tr);


    for (var j = 0; j < obj[i].obj1.nestobj.length; j++)
    {                
        var $delBtn = $("<input>",{type:"submit",value:"Delete"});
        var $p = $("<p>",{text:obj[i].obj1.nestobj[j].value});
        $delBtn.on("click",function(){
            $(this).parent().remove();
        });
        $p.append($delBtn);
        tr.append($p);
        $('tbody').append(tr);

    }     
    var $removeAll = $("<input>",{type:"submit",value:"Remove All"});
    var $col = $("<td>",{text: obj[i].obj1.nestobj.length});  
    $removeAll.on("click",function(){
        $(this).closest("tr").find("p").remove();
    });
    $col.append($removeAll);
    tr.append($col);
    $('tbody').append(tr);

}

});

这就是在您的输入中添加事件以删除项目

$(function () {
    var tr;
    var obj = [{ obj1: { "name": "v1", nestobj: [{ "value": "10" }, { "value": "20" }, { "value": "20" }] } }];

    obj.push({ obj1: { "name": "v2", nestobj: [{ "value": "abc" }, {"value": "xyz"}] } });


    for (var i = 0; i < obj.length; i++)
    {
        tr = $('<tr/>');
        tr.append("<td>" + obj[i].obj1.name + "</td>")
        $('tbody').append(tr);


        for (var j = 0; j < obj[i].obj1.nestobj.length; j++)
        {                
            var $delBtn = $("<input>",{type:"submit",value:"Delete"});
            var $p = $("<p>",{text:obj[i].obj1.nestobj[j].value});
            $delBtn.on("click",function(){
                $(this).parent().remove();
            });
            $p.append($delBtn);
            tr.append($p);
            $('tbody').append(tr);

        }     
        var $removeAll = $("<input>",{type:"submit",value:"Remove All"});
        var $col = $("<td>",{text: obj[i].obj1.nestobj.length});  
        $removeAll.on("click",function(){
            $(this).closest("tr").find("p").remove();
        });
        $col.append($removeAll);
        tr.append($col);
        $('tbody').append(tr);

    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <table>
        <tbody></tbody>
    </table>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-07
    • 2021-12-28
    • 1970-01-01
    • 1970-01-01
    • 2021-01-30
    相关资源
    最近更新 更多