【发布时间】:2015-10-13 09:46:34
【问题描述】:
在我的表单中,我有一个如下的文本框
@Html.TextBox("first_name")
我需要通过 actionlink 将此文本框的值传递给控制器。
我试过下面的
@Html.ActionLink("View", "view_Details", new { name = first_name})
但这会报错
“first_name”在当前上下文中不存在
这可以使用 Actionlink 吗?
我的控制器签名是
public ActionResult view_Details(string name)
{
return View();
}
已编辑
@Html.ActionLink("View", "view_Details", new { name = getname()})
<script type="text/javascript">
function getname() {
return $("#first_name").val();
}
</script>
我试过上面的代码。它也给出错误
getname() 在当前上下文中不存在
【问题讨论】:
-
您将需要 javascript/jquery 来获取文本框的值,然后更新 url
-
@stephenmuecke 尝试与问题中已编辑的部分相同
-
这是因为 Razor 代码在发送到视图之前在服务器上进行了解析。
getname()是当时不存在的客户端方法。我将很快发布一个答案,说明您如何做到这一点。