2013-07-04 63 views
0

不可否認的不是js專家。 - 如何刪除最後一個元素的尾部<br>?隨意評論一般方法並提出意見或建議。謝謝!!重構刪除尾部<br>

$(document).ready(function() { 
    $.getJSON("{% url "relationship_sidebar_ajax" app_label=app_label model=model object_id=object.id %}", function(data) { 
     var str = "" 
     for (var item in data) { 
      var itemData = data[item]; 
      str += '<dt>' + item + '</dt>'; 
      for (idata in itemData) { 
       str += '<dd>' + itemData[idata].href; 
       if (itemData[idata].is_owned) { 
        str += '&emsp;<i class="icon-lock"></i>'; 
       } 
       str += '&emsp;' + data[item][idata].add_href + '</dd>'; 
      } 
      str += '<br />' 
     } 
     $('#relations').append(str) 
    }); 
}) 
+0

你可以把它放在循環的開始,但那麼你會有一個領先的
就夠了嗎?如果沒有,那麼你需要跟蹤第一次迭代,而不是添加它 – 75inchpianist

回答

4

使用數組來保存線,然後在年底與<br/>加入他們的行列。

$(document).ready(function() { 
    $.getJSON("{% url "relationship_sidebar_ajax" app_label=app_label model=model object_id=object.id %}", function(data) { 
     var arr = [] 
     for (var item in data) { 
      var itemData = data[item]; 
      var str = '<dt>' + item + '</dt>'; 
      for (idata in itemData) { 
       str += '<dd>' + itemData[idata].href; 
       if (itemData[idata].is_owned) { 
        str += '&emsp;<i class="icon-lock"></i>'; 
       } 
       str += '&emsp;' + data[item][idata].add_href + '</dd>'; 
      } 
      arr.push(str); 
     } 
     $('#relations').append(arr.join('<br />')); 
    }); 
}) 
+0

你知道......有時候,答案如此明顯,你真的覺得愚蠢 - 工作很好! – rh0dium

0

那麼,你的字符串的最後五個字符永遠是<br />,所以你總是可以只追加str.substring(0, str.length - 5)。將dt和隨後的dd元素包裝在div中可能是可取的。

0

如果你想刪除字符串的br標籤中的br標籤,這將是有幫助的。

var str = "<br />Some string"; 

var regex = /^(<br\/>|<br \/>)/; 

alert(str.replace(regex,""));