2015-07-20 65 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 
} 


    });