仅当相同的div不存在时才生成和附加数据

时间:2017-04-03 17:05:52

标签: javascript jquery html json

我正在尝试创建一个虚拟应用程序,其中数据将根据某些选择显示在此处。

我点击了按钮" Open Modal"并使用表格中的复选框选择一些数据以进行行选择。

带有填充的JSONData的表格看起来像是:

enter image description here

function showData(){
                var count = 0;
                $('input[name="selectData"]:checked').map(function() {
                    var JSONData =  JSON.parse(decodeURIComponent(this.value));
                    content += '<div class="container parent" id="parent-'+count'"><div class="row article-row"><div class="col-md-6 article data-col"><div class="row"><form class="form-horizontal"><div class="form-group"><label class="control-label col-md-4">Count:</label><div class="col-md-8 article-data">'+JSONData.name+'</div></div></form></div></div><div class="col-md-6 article btn-col"><div class="row del-btn"><button class="btn btn-danger remove-btn">Delete &nbsp;<span class="glyphicon glyphicon-remove"></span></button></div><div class="row updown-btn"><div class="btn-group"><button class="btn btn-primary btn-sm top-btn"><span class="glyphicon glyphicon-arrow-up"></span></button><button class="btn btn-primary btn-sm down-btn"><span class="glyphicon glyphicon-arrow-down"></span></button></div></div></div></div></div>';
                    count++;
                });
                if($('#parent-'+count).length==0) {
                    $('.box').html(content);
                    resetEvents();
                } else {
                    alert("Data already exists!");
                }

        }

所以,现在我使用表格中的复选框选择一行,然后点击&#39;保存&#39;按钮然后将数据附加到具有class =&#34; box&#34;的静态div。

但是,如果一个具有id的特定div(我使用以下内容为div生成随机:id =&#34; parent&#34; + count&#34;如上面的函数所示)已经存在在带有类框的div里面,它不应该添加它。

  1. 选择A&amp; C从屏幕截图中显示的表格中点击并保存&#39;

  2. A&amp; C附加到&#34; div.box&#34;用ids&#34; parent-0&#34;和&#34; parent-1&#34;分别

  3. 现在,选择A&amp; B从表中。

  4. 当前情况:未添加任何内容,警报显示为&#34;数据已存在!&#34;

    理想行为:B应该附加到&#34; div.box&#34; id为#34; parent-2&#34;并且警报应显示为&#34; A已存在!&#34;。

    我如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

我认为你的意思是做:

 if($('#parent-'+count).length { // this means id exists
       alert("Data already exists!");
 } else {
       $('.box').html(content);
       resetEvents();

 }
相关问题