如何解决将路由值传递给MVC 3中的Controller
| 我在视图中有此代码 @using (Html.BeginForm())
{
@: Location @Html.DropDownList(\"territryID\",(SelectList)ViewBag.Territory,\"choose one\")
@Ajax.ActionLink(
\"ok\",\"Info\",new { territryID = \"#territryID\" },new AjaxOptions
{
InsertionMode = InsertionMode.Replace,HttpMethod = \"POST\",UpdateTargetId = \"post1\"
})
<div id=\"post1\">
</div>
}
这是我控制器中的代码
[HttpPost]
public ActionResult Info(int? territryID)
{
if (territryID == null)
{
return RedirectToAction(\"Info\");
}
var model = (from c in _db.OCRDs
where c.Territory == territryID
select c).Distinct();
return PartialView(\"_getCustomerByTerritory\",model);
}
如何将我的下拉列表选择的值传递给控制器中的territryID参数,该怎么做?
谢谢,
rick
解决方法
怎么样,将您的URL初始化为类似这样的内容(还要注意对链接的ID分配):
@Ajax.ActionLink(\"ok\",\"Info\",new { territryID = \"REPLACEME\" },new AjaxOptions { InsertionMode = InsertionMode.Replace,HttpMethod = \"POST\",UpdateTargetId = \"post1\" },new { id = \"oklink\" })
下拉菜单更改时,请替换占位符(REPLACEME),如下所示:
<script>
$(\'#territryID\').change(function () {
var newid = $(\'#territryID\').val();
var oldLink = $(\'#oklink\').attr(\'href\');
var newLink = oldLink.replace(\'REPLACEME\',newid);
$(\'#oklink\').attr(\'href\',newLink);
});
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。