我試圖在觸發更改事件後將下拉列表呈現爲diabled。我在httppost上的控制器的viewbag中傳遞了禁用標誌。但是,viewbag的名稱顯示在html標誌中,而不僅僅是值。請參閱我下面的代碼:使用viewbag禁用html屬性
@Html.DropDownList("dropdown", ViewData["dropdown"] as IEnumerable<SelectListItem>, "--Select--", new { @class = "form-control", id = "dropbox", onchange = "this.form.submit();", ViewBag.propertydisable})
在我的控制器
ViewBag.propertydisable = "disabled";
它是如何呈現HTML:
<select class="form-control" id="dropbox" name="searchparams" propertydisable="disabled" onchange="this.form.submit();" >
<option value="">--Select Budget holder--</option>
<option selected="selected" value="option1">option1</option>
<option value="opt">option2</option>
</select>
我是多麼希望它渲染是
<select class="form-control" id="dropbox" name="searchparams" disabled onchange="this.form.submit();">
<option value="">--Select Budget holder--</option>
<option selected="selected" value="option1">option1</option>
<option value="opt">option2</option>
</select>
因此,一旦回發完成,最終結果將被禁用。
我已嘗試和財產來爲禁用無回傳被觸發,甚至當我設置viewbag值爲false。 – snab
@ user2055227沒錯,只要「禁用」的存在將會禁用它,而不管「=」後面的部分。 – Crowcoder
所以它的js代碼是錯誤的。請參閱更新代碼 –