![](/img/trans.png)
[英]debugging not working in javaScript code, in asp .net MVC4 application
[英]JavaScript to choose droplist value not working in ASP .NET MVC4 with HTMLHelper and “All”
我正在使用JavaScript獲取MVC 4中下拉列表的選定值,但是我認為有一個問題是由HTMLHelper引起的。
控制器-填充下拉列表
private string PopulateStandard(object selectedValue = null)
{
var query = db.Database
.SqlQuery<StandardModel>(
"SELECT * FROM [DBO].[GetStandards] ('" +
User.Identity.Name + "', '" + DateTime.UtcNow + "')")
.ToList();
ViewBag.Standard = new SelectList(query, "Standard", "Standard", selectedValue);
try { return query[0].Standard; }
catch { return ""; }
}
視圖
該視圖具有此部分的下拉列表。 請注意包含“全部”。 我認為這是問題所在。 這會將第一行放在下拉列表的頂部,並說“ All”(空)。 我要那個。 目前為止很好,那又如何)
@Html.DisplayNameFor(m => m.Standard)
@Html.DropDownList("Standard", "All")
JAVASCRIPT
這是一個很長的故事,但是我還有其他代碼需要我使用JavaScript獲取下拉列表的值,所以我這樣做是這樣的:
var e = document.getElementById("Standard");
var sStandard = e.options[e.selectedIndex].value;
問題
如果未選擇任何值,那么我應該獲得第一行,該行將為“ All”(文本)或“”(value)。 相反,我得到的是第二行,它是第一行,其中包含從數據庫填充的數據。
HTML助手是否導致我無法獲得第一行? 還是我的JavaScript關閉了?
編輯-在下拉列表上顯示ViewSource
這些是渲染列表的前幾行
<select id="Standard" name="Standard"><option value="">All</option>
<option value="2S">2S</option>
<option value="Aero">Aero</option>
@ Html.DropDownList(“ Standard”,“ All”)
這里的“全部”是選項標簽。 因此您不會獲得此價值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.