<div >
        <% using (Html.BeginForm("Factory", "Home", new { id=******* }))
           { %>            <%= Html.TextBox("Name") %>        
            <input type="submit" value="查询" />
              <%  
            } %>
    </div>
那个星号,如何用<%= Html.TextBox("Name") %>传过去呢?也就是说:
例如用户在textbox里填写“aaa”
Home/Factory/aaa
我就这么打开地址栏。————————————————————————
这个和Global.asax里的routes配置没关系,而且我已经配置好了。
里边的配置是默认的,我没动。

解决方案 »

  1.   

    提交 需要在相应的Ctroller里面写接受返回的处理方法
    [httpVerb.Post]
    public Action Method()
    {}
      

  2.   

    http://www.cnblogs.com/QLeelulu/archive/2008/05/24/1206624.html
      

  3.   

    **************************************
    谢谢你,不过你好像没明白我的意思。
    第一,我的是get提交,不是post提交。不是“[httpVerb.Post]”
    第二,我现在的问题是提交时,像这样Home/Factory/aaa
         不是post提交,也不想Home/Factory?Name=aaa,
          只想Home/Factory/aaa提交过去。
    第三,说到这里,有人会提示我配置好route,我已经配置好了。
      

  4.   

    post 过去的,没必要动态设置 form.action
      

  5.   

    只想Home/Factory/aaa提交过去把 form 的 method 指定为 Get 如果你没动过默认的route,那么
    把这个<%= Html.TextBox("Name") %>        
    替换成<%= Html.TextBox("Id") %>
      

  6.   

    <%= Html.TextBox("id") %>sorry, 默认的 route,参数 id 是小写的
      

  7.   

    你想 地址栏也变Home/Factory/aaa 是get 方式,你的 是post方式 form提交,地址参数又不表现出来的。你用get方式就行了,不要用post: <%= Html.ActionLink("连接","Factory","Home",new {id="参数1"},new {id="Link1"}) %>
      

  8.   

    谢谢,我已经按照你说的做了,不行,提交过去后是这样的url
    Home/Factory?Id=aaa
      

  9.   


    不能写在<% using (Html.BeginForm("Factory", "Home", new { id=******* }))
    的那个星号里吗?我想写在form里,或者是你那样写
    <%= Html.ActionLink("连接","Factory","Home",new {id="参数1"},new {id="Link1"}) %>
    请问那个“参数1”用<%= Html.TextBox("Name") %>代替呢。谢谢
      

  10.   

    用js 动态生成url,
    window.loaction.href='/home/factory/'+$('#Name').val();
      

  11.   


    <%= Html.TextBox("id") %>id 小写试一试
      

  12.   


    谢谢,小写了也不行。
    Home/Factory?id=aaa
      

  13.   


    route就是默认的呀,新增一个mvc后,我没动。mvc2大家都是一样的吧。