2011-11-18 54 views
1

有沒有辦法使用jQuery刪除時間段和所有內容?這段時間後的數字長短不一,所以它不像找到長度那麼簡單。刪除使用jQuery後的時間段和所有內容

例如:

<span class="changethis">505.234</span> <span class="changethis">23.93</span> 

感謝您的幫助!

P.S. (獎金)如果有一種方法可以收集,如果它的x.5或更高,那就太棒了。雖然不是必需的。

回答

4

試試這個。

$('.changethis').each(function() { 
    $(this).html(Math.round(parseFloat($(this).html()))); 
}); 

http://jsfiddle.net/d4fv8/1/

+0

感謝您的快速響應!它完美的作品。 – veryserious

1

這應該做的伎倆(包括四捨五入):

$(function() { 
    var element = $('.changethis'); 
    var number = parseFloat(element.html()); 
    element.html(number.toFixed(0)); 
}); 
+0

問題是要刪除期間和它後面的所有內容...... – Jasper

+0

啊,我誤讀!現在更新。謝謝。 –

-1

的JavaScript處理截斷和舍入被內置在語言,沒有jQuery的需要:

x = Math.round(505.234)

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Math/round

+0

當選擇DOM元素並獲取/設置文本時,jQuery會派上用場。也許你可以更新你的解決方案來做到這一點。 – Jasper

+0

我想我可以,但是有人已經這麼做了 - 我正在閱讀這個問題,好像作者認爲有一個執行Math.round()的jQuery函數,並且只是指出「刪除期間以及使用jQuery之後的所有內容「都是錯誤的追求,儘管反思中我看到我也應該包含jQuery部分。 –

0

假設跨度的內容將永遠只能是數字,那麼這將你需要的東西:

$("SPAN.changethis").each(function(index, elem) { 
    $(elem).text(Math.round($(elem).text())) 
}); 

中的第一選擇得到所有的跨度,那麼每個跨度重複的進行替換它的內容其內容的Math.round()的結果。