C# 如何刷新dropdownlist值更改页面?
我有一个常见的视图布局页面。此布局页面包含一个下拉列表,其中显示可用日期的列表。我想要的是在仅更改了数据参数后重新加载此页面。控制器、操作和任何其他参数都应该以某种方式从当前请求上下文中获取 如果我想在每个视图上手动执行,我会说它等于C# 如何刷新dropdownlist值更改页面?,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我有一个常见的视图布局页面。此布局页面包含一个下拉列表,其中显示可用日期的列表。我想要的是在仅更改了数据参数后重新加载此页面。控制器、操作和任何其他参数都应该以某种方式从当前请求上下文中获取 如果我想在每个视图上手动执行,我会说它等于 @Html.ActionLink( "", "I need to have current action name here", new { date
@Html.ActionLink(
"",
"I need to have current action name here",
new { date = "The Value of the chosen SelectListItem" });
我怎样才能做到这一点?或者有什么不同的方法吗?Html:
<select id="mySelect" name="list" size="1">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
<span id="tag"></span>
这就是一个例子。如果您想加载另一个页面-调用另一个JS函数,或ajax控件,有关当前操作的信息可在
RequestContext
中找到,您可以直接访问它:
@Url.Action(ViewContext.RequestContext.RouteData.Values["action"],
new { date = "The Value of the chosen SelectListItem" });
在您的情况下,我会将url添加到option data属性,然后使用jQuery:
$('select#yourid').change(function() {
document.location.href = $(this).find('option:selected').data('url'));
});
如何获取dropdownlist上的数据属性更改可以在这里看到。抱歉,但是如何使浏览器转到dropdownlist上的此链接值更改?更新了我的答案。如果在渲染部分需要帮助,请告诉我。我现在手头没有Visual Studio…非常感谢!我非常感谢你的帮助
$('select#yourid').change(function() {
document.location.href = $(this).find('option:selected').data('url'));
});