javascript - MVC 5 DropDownList 将字符串添加到 Jquery 的值

标签 javascript jquery asp.net-mvc

我必须在 MVC 中通过 DropDownListFor Html Helper 选择列表,如下所示:

@Html.DropDownListFor(m => m.ProjectType, @Model.ProjectTypeList, "Select One",
                      new { @id = "ProjectTypeList" })

问题是我在 jQuery 中写道:

alert($('#ProjectType').val());

它给了我正确的值。但如果我写这个(在那之后):

var programmeUrl = '/api/Programme/' + $('#ProjectType').val()

我得到这样的东西:

SomeValue%20?_=1409153033527

所以我的 WebAPI 返回“未找到”,因为它只需要 SomeValue。任何想法为什么我会得到这个。令人沮丧的是,因为我为其他人做了同样的事情,但没有遇到这个问题。 提前致谢。

最佳答案

最好不要在选择列表上使用 .val(),因为单击选项不会更改下拉列表的值,它只是添加 :selected属性(property)。

你应该这样做:

$('#ProjectType').find(":selected").val();

关于javascript - MVC 5 DropDownList 将字符串添加到 Jquery 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25531383/

相关文章:

jquery - 通过类名模拟点击同一个div

c# - 如何显示流返回的 pdf(在 JsonResult 中)?

javascript - 如何让systemjs从全局格式的CDN加载模块?

javascript - jQuery 音频播放器

javascript - 如何渲染不同的组件 onClick? (组件应替换为最新的单击处理程序。)

c# - 弹出 - 阻止了带有来源的框架

asp.net - 用于 ASP.Net(也许是 MVC)网站的博客引擎

javascript - setInterval 倒计时太快

javascript - 在 JavaScript 中实现 Circle 构造函数,无需 ES6 类

javascript - 在渲染 React 组件之前等待 AJAX 调用完成