2013-07-12 33 views
0

以下是我有:我有一個返回字符串的jquery腳本。我如何才能在最後返回空格字符?

       $(this).text(function(){ 
            if(this.title <=45) 
             return 'Done '; 
            else 
             return 'Incomplete '; 

           }); 

,但我想是被輸出到顯示最後的空白字符的字符串。

目前,它輸出它讓我得到「完成」我要「完成」

謝謝!

+0

我發佈了一個問題的答案,但是......這是可以在css中完成的東西嗎?例如,你是否試圖在兩個元素之間添加一些間距?如果是這樣的話,css應該更好地將樣式硬編碼到數據中。 –

+0

是的,這也可以在css中完成,我可以填充/保留文本,但是我的代碼是以這種方式設置的(這只是給出我遇到的問題的一個例子 - 代碼本身是複雜的,需要我改變很多其他的東西,如果我想在CSS中配置這個) – Anko

回答

0

你可以改變這樣的:

$(this).html(function(){ 
    if(this.title <=45) 
     return 'Done&nbsp;'; 
    else 
     return 'Incomplete&nbsp;'; 
}); 

請注意,您需要使用html()而不是text()

另外,我很可能會令這個多一點簡潔:

$(this).html((this.title <= 45 ? 'Done' : 'Incomplete') + '&nbsp;'); 
+0

感謝大家,這就是它!我以前已經嘗試過,但是它不起作用,因爲我使用text()而不是html()。 – Anko

2

嘗試

return "Done"+ "&nbsp"; 

其中"&nbsp"加空格。

,或者如果你有一個DIV/SPAN ID,那麼另一種可能是

$("#target").append(" "); 
0

嘗試這些字符串:Done&nbsp;Incomplete&nbsp;

0

的HTML編譯器將去除所有多餘的空格在頁面中,除了單詞之間。因此,如果您確實需要空格,請儘可能多地使用HTML代碼&nbsp;

0

jsFiddle Demo

如果你想空白到標記顯示,使用<pre>元素。如果您不能使用pre元素,請使用pre css樣式。

element.style.whiteSpace="pre";