2015-07-20 115 views
0

我有一个包含表格和添加按钮的html模板。点击添加按钮时,选择将添加到表格中。我想添加一个条件,如果其中一个选择包含“地图”,它应该添加模式到该特定的列。例如:如何在向表中添加行之前添加条件:jquery

<div class="reports"> 
    <div class="panel"> 
     <table class="A"> 
      <thead> 
       <td>A</td> 
       <td>B</td> 
       <td>C</td> 
      </thead> 
      <tbody> 
      </tbody> 
     </table> 
    </div> 
    <button class="add" type="button">Add</button> 
</div> 

jQuery脚本是:

$('.reports').on('click','.add',function(){ 
    $(this).find('table').append(table rows);// how to add condition inside append 
}); 

有三列的三个值:value1, value2, value3

if text2=="Map"{ 
    value2 = "modal-dialog"; 
} else { 
    value2 = text2; 
} 

如何添加append()内的if条件?

+2

我不明白......你就不能使用'如果(...){}其他{}'声明* *前的追加功能?你正在尝试做什么不寻常的事情? –

+0

正确@TimLewis。当你构造*表行*时,在你追加的时候应用'if ... else'逻辑,以便*表行*是** ready **。或者如果你在处理简单的字符串,使用三元运算符'.append(text2 =='Map'?'modal-dialog':'其他字符串')'。 – PeterKA

回答

1

而不是在append()中添加条件。尝试外部并在append()中调用该元素。 例子:

$('.reports').on('click','.add',function(){ 
    if (text2 == map_text) { 
      var map_elements += '<button role="button" data-target="#map-id" class="map-btn btn btn-primary" data-toggle="modal">Map</button></span>'; 
     } else { 
      var map_elements += text2; 
     } 
$(this) 
     .find('table') 
      .append('<tr><td>'+map_elements+'</td></tr>'); //this should work 
}); 
+1

谢谢你的工作,没有什么变化。 – Nanda

1

使用

$('.reports').on('click','.add',function(){ 
     if text2=="Map"{ 
    do something 
} else { 
    do something else 
} 


    });