2017-04-14 52 views
-2
function addmsg(type, msg) { 
    if (type = 'new') { 
     $('#ntfcn').html(type); 
     var notify = ["New Message", "New Mail", "New Event", "New Assignment"]; 
     var i; 
     for (i = 0; i < notify.length; i++) { 
      $('#ntfcn_msg').html("<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + notify[i] + "</h6></div></a>"); 
     } 
    } 
} 
+4

當你問你的問題,有一個大的橙色**如何格式化**框的文本區的有用的信息的權利在裏面。還有一個格式化輔助工具的整個工具欄。和一個** [?] **按鈕提供格式幫助。 *和*位於文本區域和「發佈您的問題」按鈕之間的預覽區域(以便您必須滾動查看按鈕才能找到該按鈕,以鼓勵您查看該按鈕),以顯示帖子在發佈時的樣子。明確你的帖子,並證明你花時間這樣做,提高你獲得良好答案的機會。 –

+0

你是什麼意思?什麼是最後的價值? – Leguest

+0

我已經爲你縮進和格式化了代碼。 –

回答

1

此行只有最後一個值將覆蓋什麼在ntfcn_msg元素每次循環迭代:

$('#ntfcn_msg').html("<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + notify[i] + "</h6></div></a>"); 

你的意思是已經打算追加

$('#ntfcn_msg').append("<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + notify[i] + "</h6></div></a>"); 
// -------------^ 

...或許在循環前面有一個empty來清除它先出來:

$('#ntfcn_msg').empty(); 

所以:

function addmsg(type, msg) { 
    if (type == 'new') { 
     $('#ntfcn').html(type); 
     var notify = ["New Message", "New Mail", "New Event", "New Assignment"]; 
     var i; 
     $('#ntfcn_msg').empty(); 
     for (i = 0; i < notify.length; i++) { 
      $('#ntfcn_msg').append("<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + notify[i] + "</h6></div></a>"); 
     } 
    } 
} 

另一種選擇是使用Array#mapjoin,然後html

function addmsg(type, msg) { 
    if (type == 'new') { 
     $('#ntfcn').html(type); 
     $('#ntfcn_msg').html(
      ["New Message", "New Mail", "New Event", "New Assignment"].map(function(text) { 
       return "<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + text + "</h6></div></a>"; 
      }).join("") 
     ); 
    } 
} 

旁註:id=''不會做任何事情,你可能會離開它。

附註2:請參見Mike C's point

if (type = 'new') { 

,應該是

if (type == 'new') { 

if (type === 'new') { 

=分配(設置type的價值'new')。因此,您將type設置爲'new',然後測試結果,並且您總是會進入if的正文,因爲'new'是真值。

0

使用.append(),而不是html的()

function addmsg(type, msg) { 
     if (type = 'new') { 
      $('#ntfcn').html(type); 
      var notify = ["New Message", "New Mail", "New Event", "New Assignment"]; 
      var i; 
      for (i = 0; i < notify.length; i++) { 
       $('#ntfcn_msg').append("<a href='employee-dashboard.jsp' id='' class='msg_show'><div class='media-body'><h6 class='media-heading'>" + notify[i] + "</h6></div></a>"); 
      } 
     } 
    }