0

我正在尝试使用 Razor(添加查询字符串)将表单中的数据附加到我的页面的 Url。我已经在 ASP.NET Web 控件中完成了此操作,但如果可能的话,我更愿意在 Razor 中执行此操作?

这是我的 Razor 脚本的一个非常基本的版本,但目前“@test”变量在发布时为空:

@{
    <form id="test" method="post">
        <input type="text" />
        <input type="submit" value="Submit" />
    </form>

    if(IsPost){
        var test = Request.Form["test"];
        Response.Redirect(@Model.Url + "?test=" + @test);
    }
}

作为旁注,有没有办法在没有 POST 方法的情况下实现这一点?

4

1 回答 1

3

据我了解,您想在测试变量中添加输入值。您应该为 input[text] 定义 id 或者您应该将其更改为

页:

@using (Html.BeginForm("ActionName", "ControllerName", FormMethod.GET, null))
{
   <input type='text' name'test' id='test' />
   <input type="submit" value="Submit" />
}

或您的代码

@{
    <form method="get" action="@Model.Url">
        <input type="text" name="test" id="test" />
        <input type="submit" value="Submit" />
    </form>    
}

PS 我不清楚你的代码,因为你设置了 POST 方法并想要处理 GET 方法。

于 2013-06-03T11:41:21.597 回答