2017-01-12 60 views
-1

我在函數內添加換行符有問題。該功能顯示日期和時間。我需要在第二條線上顯示日期和時間。我檢查了所有相關的答案。我曾嘗試使用\ n,br,join(「\ n」),嘗試在我的函數內部創建br元素,但不幸的是它不起作用。這裏是我的一段代碼:在函數內添加換行符

function getTime(a) 
{ 
    var d; 
    if(a) { 
    d = new Date(a); 
    } else { 
    d = new Date(); 
    } 
    return ('0' + d.getDate()).slice(-2) + '.'+ 
     ('0' + (d.getMonth() + 1)).slice(-2) + '.' + 
     (d.getYear() + 1900) + ' ' + // here instead of space I need to add a line break in order to display time on a new line 
     ('0' + d.getHours()).slice(-2) + ':' + 
     ('0' + d.getMinutes()).slice(-2) + ':' + 
     ('0' + d.getSeconds()).slice(-2) + '.' + 
     d.getMilliseconds(); 
} 

請給我提示如何解決問題。 非常感謝您提前!

+0

我假設你正在網頁上顯示。是對的嗎?如果是這樣的話,你正確的使用'
',並且按照預期工作:https://jsfiddle.net/wxpz8njf/ – Jamiec

+0

你應該告訴我們這個字符串是如何發送顯示的,以及在什麼環境或框架下(如果有的話)。我假設有一個,它顯示前清理字符串('\ n'或'
'應該工作,如果不能,他們很可能被刪除) – Kaddath

+0

而不是'd.getYear()+ 1900'你應該使用'd.getFullYear()'。兩位數* getYear *被有效引入[* ECMA-262 ed 1 *]中棄用(http://ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%201st%20edition ,%20June%201997.pdf)。爲什麼它沒有被刪除是一個謎。 – RobG

回答

2

您可以添加一個新行字符:

function getTime(a) 
 
{ 
 
    var d; 
 
    if(a) { 
 
    d = new Date(a); 
 
    } else { 
 
    d = new Date(); 
 
    } 
 
    return ('0' + d.getDate()).slice(-2) + '.'+ 
 
     ('0' + (d.getMonth() + 1)).slice(-2) + '.' + 
 
     (d.getYear() + 1900) + '\n' + // here instead of space I need to add a line break in order to display time on a new line 
 
     ('0' + d.getHours()).slice(-2) + ':' + 
 
     ('0' + d.getMinutes()).slice(-2) + ':' + 
 
     ('0' + d.getSeconds()).slice(-2) + '.' + 
 
     d.getMilliseconds(); 
 
} 
 

 
console.log(getTime())

,或者如果您在標記內的HTML希望你添加<br>

function getTime(a) 
 
    { 
 
     var d; 
 
     if(a) { 
 
     d = new Date(a); 
 
     } else { 
 
     d = new Date(); 
 
     } 
 
     return ('0' + d.getDate()).slice(-2) + '.'+ 
 
      ('0' + (d.getMonth() + 1)).slice(-2) + '.' + 
 
      (d.getYear() + 1900) + ' <br> ' + // here instead of space I need to add a line break in order to display time on a new line 
 
      ('0' + d.getHours()).slice(-2) + ':' + 
 
      ('0' + d.getMinutes()).slice(-2) + ':' + 
 
      ('0' + d.getSeconds()).slice(-2) + '.' + 
 
      d.getMilliseconds(); 
 
    } 
 

 
document.querySelector('.test').innerHTML = getTime()
<div class='test'></div>

如果您處理html標記<br>標記是顯示回車的正確方法。

+0

'我試圖用\ n,br' < - 原始問題 – Jamiec

+0

@Jamiec用CTRL + F5刷新,因爲這個應該可以工作。 – malutki5200

+0

@ malutki5200在控制檯它會。在網頁上它不會。 – Jamiec