Html表单 - 没有响应

时间:2013-09-13 11:05:59

标签: c# html asp.net-mvc razor

我正在为MVC Razor3 .NET中的公司工作。 这是我第一次使用MVC,但我现在已经获得了很多知识。 只有一件事我似乎无法弄明白。

我正在为服务中心的经理制作一个评级系统,他希望对操作员的评分方式进行评分。当他对事件进行评分时,他们应该能够看到等级并修复事件中的错误。如果他们不同意收到的等级,他们必须能够反对并发送一个小评论。

因此,在操作员的评论视图中(他可以选择固定或对象),有以下代码:

<tr class="border_bottom">
@if (false == Model.Fixed)
{

using (Html.BeginForm("Objected", "IncidentCheck", FormMethod.Get))
{
<td colspan=3>
<input id="Code" name="Code" type="hidden" value="@Model.Code" />
<input class="text-box single-line" style="width:100%" id="Message" name="Message" type="text"  value="" /> </td>
<td><input type="submit" value="Object" /></td>

}
}

</tr> 

及时生成此Html:

<tr class="border_bottom">
<form action="/IncidentCheck/Objected" method="get"><td colspan=3>
<input id="Code" name="Code" type="hidden" value="C1308-0059" />
<input class="text-box single-line" style="width:100%" id="Message" name="Message" type="text"    value="" /> </td>
<td><input type="submit" value="Object" /></td>
</form>
</tr>

现在显示效果很好,但每当我点击对象按钮时,只需刷新页面而无需采取正确的操作。动作的代码暂时没用,因为它永远不会到达,但函数看起来像这样:

       [HttpGet]
    [RoleFilter(Roles = "Operator")] // Custom role filter.
    public ActionResult Objected (string Code, string Message)
    {

        return View("Test");
    }

注意:HTML是部分视图中Displaytemplate的一部分,因此在部分视图中,有更多事件都具有相同的表单。 (不确定这与它有什么关系。)

我很确定我忽视了一些简单的事情。

提前致谢, 罗哈斯

2 个答案:

答案 0 :(得分:1)

哎呀我做了嵌套表格的意外错误,这是不允许的。

感谢用户codebrain和Roel van Uden的错误。谢谢你们帮我在聊天中回答这个问题。

答案 1 :(得分:0)

如果您可以控制生成的HTML,则可以尝试使用Razor语法

@using (Html.BeginForm(Objected, IncidentCheck, FormMethod.Get, 
           new { code= [Pass your code value here], 
                 message = [Pass your message value here] }))
{
     // Form elements.
}

而不是

<form action="/IncidentCheck/Objected" method="get">
    // Form elements.
</form>