Javascript mvc3下拉列表设置从模型中选择的值

Javascript mvc3下拉列表设置从模型中选择的值,javascript,select,Javascript,Select,我正在.aspx页面中创建一个选择列表 <label for="AccessType" class="required"><span class="required">*</span><%=Html.Resource("accessType")%>:</label> <select id="AccessType" name="AccessType"> <%

我正在.aspx页面中创建一个选择列表

<label for="AccessType" class="required"><span class="required">*</span><%=Html.Resource("accessType")%>:</label>
                <select id="AccessType" name="AccessType">
                <% foreach (var item in Enum.GetValues(typeof(Security.AccessType)))
                {%> 
                <option value="<%=(int)item%>"><%=item%> </option> 
                <%}%>
                </select><br />
现在,每次我加载页面时,它都会选择第一个值作为默认值,我希望选择模型中的值

我将下拉列表合并到代码中的枚举。Security.AccessType是枚举而不是模型。因此,每次页面加载时,它都会将下拉列表的选定值显示为第一个枚举

我希望所选项目为Model.AccessType


我知道这是一个非常基本的问题,但仍然有任何帮助吗?

您可以为想要成为默认值的选项指定一个选定属性,例如:

<option value="apple" selected="selected">apple</option> 

我用了下面的方法得到了结果

$'ddlAccessType'.val$ddlAccessType选项:包含'+$'AccessTypeValue'.val+'.val

这是首先获取AccessType值,然后在下拉列表中检查其索引,然后将所选索引设置为找到的索引


有点奇怪,但对我来说效果很好

从描述中不清楚,选择第一个值作为默认值是什么意思,因为我希望选择模型中的值。您正在将模型绑定到下拉列表,以便在下拉列表中填充所有值。好的。。对不起,不清楚。。我将下拉列表合并到代码中的枚举。Security.AccessType是枚举而不是模型。因此,每次页面加载时,它都会将下拉列表的选定值显示为第一个枚举值。因此,下拉列表将根据对其进行的绑定显示第一个值。因此,如果您希望显示模型的值,则必须绑定模型,而不是枚举。如果您只想将特定值设置为选定项,则不清楚要实现什么。可以通过Jquery的“Document.ready”功能轻松实现。您的意思是在列表生成后需要选择一个选项?如果这是您的条件,您可以通过javascript选择一个选项。例如:var el=document.getElementByIdAccessType;el.selectedIndex=您的索引;或者el.value=你的价值;
var el = document.getElementById("AccessType");
el.selectedIndex = yourIndex; //index of the option you want to select
//or
el.value = "yourValue"; //value of the option you want to select