2016-06-23 68 views
0

我是Jade的新手,我獲得了在網頁中創建選擇選項的任務。一切似乎都很好,直到我得到一個空的選項元素,這是在下拉列表爲空並且頁面被刷新時創建的。我想以某種方式刪除這個空白的選項元素。我在這裏經歷了大多數帖子,但似乎沒有得到任何幫助。以下是我的Jade邏輯。if/else語句刪除Jade模板中的選擇選項

玉:

#remarksField 
    h1#remarksHeader Remarks 
    select#shortDesc 
     option(value= "")= "---" 
     each index in data 
     if (index) 
      option(value= index.id)= index.short_desc 
     // else 

不知道如何發佈一個小提琴,因爲它是一個大的代碼的一部分,但我希望有人得到幫助我在這裏。

How it looks when trying to select an option

回答

1

第一個option標記之後的額外縮進會導致以下所有選項位於第一個標記內。刪除多餘的縮進,它應該所有的工作:

#remarksField 
h1#remarksHeader Remarks 
select#shortDesc 
    option(value= "")= "---" 
    each index in data 
    if (index) 
    option(value= index.id)= index.short_desc 
    // else 
+0

我試過了,但沒有工作。我認爲沒有值的空對象存儲在將if語句設置爲true的索引中,從而創建空白選項。現在我需要做的是證明索引是否爲空或者沒有錯誤,如果是,那麼不應該沒有選項元素。這就是變得乏味,因爲我正在通過Jade執行此操作。 – Pappy

+1

而不是檢查'index'是否存在,請嘗試檢查'index.id'是否存在。沒有更多的信息,我可以做的不多。請標記答案正確以關閉問題 – jhhayashi

+0

它通過證明index.id是否存在@jhhayashi – Pappy

0

你的if語句刪除括號,圍繞 「指數」。

所以它應該是這樣的:

if index

你可以在這裏找到更多關於if語句 - http://jade-lang.com/reference/conditionals/

+0

根據該文件,「它仍然是常規的JavaScript」,讓周圍的布爾表達式的括號都很好 – jhhayashi

+0

啊確定,不夠公平。 –

0

添加佔位符

option(value="1" placeholder="Select") 

這會避免從得到空白刷新。