您好,我有一个 html 下拉列表,可以完美地从我的数据库中获取和显示值,现在我有一个 javascript 方法可以从列表中获取选定的值,我不知道这个脚本是否有效,但无论哪种方式我如何获得将选定的值添加到我的 controller.cs 代码中?任何输入将不胜感激。
`<h2>Create New Task</h2>
<% using (Html.BeginForm()) {%>
<%: Html.ValidationSummary(true) %>
<fieldset>
<legend>Create Task</legend>
<label for="Task">Department</label>
<div class="editor-field">
<%: Html.DropDownList( "lsttasks", new SelectList((IEnumerable)ViewData["depies"], "Department"), new { onchange = "onSelectedIndexChanged(this)" })%>
<br />`
<h2>Create New Task</h2>
<% using (Html.BeginForm()) {%>
<%: Html.ValidationSummary(true) %>
<fieldset>
<legend>Create Task</legend>
<label for="Task">Department</label>
<div class="editor-field">
<%: Html.DropDownList( "lsttasks", new SelectList((IEnumerable)ViewData[ "depies"], "Department"), new { onchange="onSelectedIndexChanged(this)" })%>
<br />
</div>
<label for="Task">Competency</label>
<div class="editor-field">
<%: Html.DropDownList( "lsttasks", new SelectList((IEnumerable)ViewData[ "compies"], "Competency1"), new { onchange="onSelectedIndexChanged(this)" })%>
<%-- <%: Html.TextBoxFor(model=>Model.Competency) %>
<%: Html.ValidationMessage( "Name", "*") %>--%>
</div>
<label for="Task">Task</label>
<div class="editor-field">
<%: Html.TextBoxFor(model=>model.Task_Name) %>
<%: Html.ValidationMessage( "Name", "*") %>
</div>
<label for="Task">Description</label>
<div class="editor-field">
<%: Html.TextBoxFor(model=>model.Description) %>
<%: Html.ValidationMessage( "Description", "*") %>
</div>
<input id="Button1" type="submit" value="CreateTask" />
</fieldset>
<% } %>
<script type="text/javascript">
function onSelectedIndexChanged(select) {
var text = select.options[select.selectedIndex].text;
document.getElementById('foo').innerHTML = text;
}
</script>
</asp:Content>
最佳答案
在您使用的脚本中 var text = select.options[select.selectedIndex].text; 最好选择相应下拉文本的id,这样你的问题就解决了。 例如:var text = $("#id_of_the_dropdown").Val(); 要选择 id,您可以通过隐藏字段传递 id。
关于javascript - 将 html 下拉列表选择的值从 javascript 发送到 mvc 2 中的模型数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28982394/