asp.net mvc从View到Controller传递参数常用的有如下几种:
1)Html.Action传参到Controller(将另一个页面加载到当前页面)
2)Form表单传参到Controller(URL/非URL两种传参)
3)JS的Get/Post传参到Controller(URL/非URL两种传参)
4)利用A标签传参(URL传参,是以可以不切确匹配路由传参)
1)项目建立请拜见:
http://jingyan.baidu.com/article/a3aad71a160b4ab1fb0096e1.html
2)项目引用请拜见:
https://jingyan.baidu.com/article/dca1fa6f1fcc51f1a540524a.html
3)从Controller到View传参:
https://jingyan.baidu.com/article/d5c4b52b91d4aeda570dc552.html
建立此次测试本家儿页Index4的Action:
public ActionResult Index4()
{
return View();
}
添加Index4页面,插手测试文字:测试从View到Controller传递参数
添加此次测试辅助页面Index5的Action,用于领受参数,并将领受到的参数返回到界面上
/// <summary>
/// 测试页面5(测试从View传递参数到Controller)
/// </summary>
/// <returns></returns>
public ActionResult Index5(string id, string parm2)
{
ViewBag.Id = id;
ViewBag.Parm2 = parm2;
return View();
}
添加Index5的页面:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index5</title>
</head>
<body>
<div>
这是ViewBag.Id的值 = @(ViewBag.Id)
</div>
<div>
这是ViewBag.Parm2的值 = @(ViewBag.Parm2)
</div>
</body>
</html>
调试运行,注重,运行成果是Index页面的内容,因为路由默认的是Index页面,是以,需要在地址栏中输入 Home/index4 才能达到此次测试的页面
第一种:利用内置的Html.Action加载
@Html.Action("Index5", new { id = "id111111", parm2 = "parm11111111111" })
第二种:利用Form表单传参
<form action="/Home/Index5" method="post">
<input type="text" value="id333333" name="id" />
<input type="text" value="parm2333333" name="parm2" />
<button type="submit">提交</button>
</form>
第三种:利用JS的Get/Post将值传到Controller,此处自行脑补
第四种:利用A标签(比力出格的一种,具体的出格点下篇再聊)
<a href="/Home/Index5/id222222" target="_blank">利用A标签</a>
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!