<input type="checkbox" value="@item.Id" checked="@(item.HasAccess ? "checked" : "")"/>
這工作正常:我的意思是,當HasAccess
是true
然後checked="checked"
當 HasAccess
是false
然後checked=""
但總是checkbox
小號檢查,如何使用三元運算符並正確處理checked
屬性?
<input type="checkbox" value="@item.Id" checked="@(item.HasAccess ? "checked" : "")"/>
這工作正常:我的意思是,當HasAccess
是true
然後checked="checked"
當 HasAccess
是false
然後checked=""
但總是checkbox
小號檢查,如何使用三元運算符並正確處理checked
屬性?
不幸的是,在剃刀V1,你必須做這樣說:
<input type="checkbox" value="@item.Id" @(item.HasAccess ? "checked=\"checked\"" : "") />
這是因爲在HTML世界中,屬性僅僅出現在所有的,無論這個值的,告訴瀏覽器選中該框。
在Razor V2中,這個問題不會那麼嚴重。請參閱下面的文章的條件屬性部分:
http://vibrantcode.com/blog/2012/4/10/whats-new-in-razor-v2.html/
您在哪裏使用此代碼?如果你發佈了更多的視圖,我必須看到更多的上下文有助於解決問題 –
@Chris我實際上只看到了在網格組件或控件中,從來沒有在MVC視圖中有助手可以使用,但確定:-) –