簡體   English   中英

選擇選項上的選定屬性不起作用(Ember.js +把手)

[英]Selected Attribute on Select Option Not Working (Ember.js + Handlebars)

我正在使用Ember實現下拉菜單,但是無法使用車把表達式設置選項元素的selected屬性。

這是一個顯示問題的余燼例子 請注意,在旋轉的DOM中,所選屬性對於頂部示例沒有出現。

<select
    aria-disabled="{{disabled}}"
    aria-multiselectable="{{multiselect}}"
    disabled={{cannotOpen}}
    onchange={{action 'itemClicked' value='target.value'}}
>
    <option selected disabled value="">{{placeholder}}</option>

    {{#each items as |item|}}
        <option 
            value={{item.value}}
            selected={{if (is-item-selected item.state) "selected"}}
            disabled={{item.disabled}}
        >
            {{item.name}}
        </option>
    {{/each}}
</select>

“ is-item-selected”是一個自定義幫助程序,如果“ item.state === 2”,則返回true,這是在下拉列表中選擇該項目時執行的操作。

無論我在把手中嘗試什么,都不會顯示selected屬性(例如, selected = {{如果為true,則為“ selected”}}也不起作用)。 但是,將選擇更改為數據選擇完全可以按預期進行。

有人知道這個問題嗎? 還是我誤解了所選屬性應該如何工作?

因此,這實際上是dom / html的“功能”。 類和數據屬性是屬性,而selected屬性是property

這里有一篇很棒的文章(關於這個問題!)

如果您想直接使用(我從其他答案中竊取了) :.prop()vs .attr()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM