首页 新闻 搜索 专区 学院

asp.net mvc3 @html.TextBox 如何获取输入的值? 后台接受值

0
悬赏园豆:5 [已关闭问题] 关闭于 2014-05-13 15:31

  例如在视图中定义一个TextBox用于用户的输入,如何获取输入的值

c#牛刀小试的主页 c#牛刀小试 | 初学一级 | 园豆:62
提问于:2012-07-05 21:12
< >
分享
所有回答(7)
1

在Action Method 里可以传 FormCollection, 然后使用你指定的key 来访问值

public ActionResult SomeActionMethod(FormCollection formCollection)

{

  var val = formCollection[key];

}

gunsmoke | 园豆:3592 (老鸟四级) | 2012-07-06 06:02

可以更详细一些嘛  我说的文本框的值不是主键

支持(0) 反对(0) c#牛刀小试 | 园豆:62 (初学一级) | 2012-07-06 08:46
0

其实是在从请求中获取的值,类似Context.Request.Form[]这种形式。我没用过 MVC,这只是自己的理解。

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-07-06 10:16
1

只要在Action方法中定义与这个TextBox的id同名的参数即可。

dudu | 园豆:38801 (高人七级) | 2012-07-06 10:55
0

你搜一下 MVC3 Model传值

owsir | 园豆:481 (菜鸟二级) | 2012-07-06 15:24
0

如果有实体的话就可以像上面说的那样

""只要在Action方法中定义与这个TextBox的id同名的参数即可。"

我经常这样用

<div class="editor-label">
            @Html.LabelFor(model => model.Account)
        </div>
        <div class="editor-field">
            <input id="Account" name="Account" onblur="Changename()" maxlength="5" />
            <div id="ts" style="color: Gray;" />
        </div>

 

如果只有一个参数的话可以考虑用 @Html.ActionLink 传值都后台

幸福至上 | 园豆:20 (初学一级) | 2012-07-12 18:06

还是没看明白  你是说在取值的那个TextBox里面 定义一个ID  然后  在action方法里面 定义的参数和ID一样是什么意思?   名字和BOX的ID一样  类型是 string ?

支持(0) 反对(0) c#牛刀小试 | 园豆:62 (初学一级) | 2012-07-12 19:53

@c#牛刀小试: 不知道这对你也没有用,

public ActionResult About()
        {
            return View();
        }

        [HttpPost]
        public ActionResult About(string UserName)
        {
            return View();
        }

 

  @Html.TextBox("UserName");
    <input type="submit" />

支持(0) 反对(0) 幸福至上 | 园豆:20 (初学一级) | 2012-07-12 20:53

<input id="Account" name="Account" onblur="Changename()" maxlength="5" />

怎么跟Model的参数结合起来啊

支持(0) 反对(0) 正在进步的-游 | 园豆:202 (菜鸟二级) | 2013-08-21 14:59
0

Request.Form["你Textbox的name"]

天子波波 | 园豆:183 (初学一级) | 2012-12-07 20:59
0

首先,视图里面使用Ajax.BeginFor的方式进行表单数据的传递:

@using (Ajax.BeginForm("Modify", "ModuleTree", new { }, new AjaxOptions { HttpMethod = "POST", OnSuccess = "EditWindow()" }))
{@Html.Textbox(model => model.ModuleParentID)}

然后在控制里面,在方法名上面使用POST表单传值的引用[AcceptVerbs(HttpVerbs.Post)],这样,在控制器就可以使用前台Textbox填写的数据了。

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Modify(string EditModule, T_Module module) 

真假不分 | 园豆:248 (菜鸟二级) | 2013-07-26 02:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册