asp.net request.form

时间:2012-06-15 12:30:36

标签: asp.net asp.net-mvc asp.net-mvc-2

public ActionResult DisplayCustomer()
{
    Customer objCustomer = new Customer();

    objCustomer.Id = Convert.ToInt16(Request.Form["Customerid"]);
    objCustomer.CustomerCode = Request.Form["code"];
    objCustomer.Amount = Convert.ToDouble(Request.Form["amount"]);
    return View(objCustomer);
}

这是我在控制器中的动作(MVC 2 aspx):

<form action="DisplayCustomer" method="post">
    Customer id:-
    <input type="text" id="Customerid" /><br />
    Customer Code:-
    <input type="text" id="code" /><br />
    Customer amount:-
    <input type="text" id="amount" /><br />
    <input type="submit" value="click here" />
</form>

这是观点。当有人点击提交按钮时,会转到新页面:

<div>
   <b> ID</b> <%= Model.Id %><br />
   <b> Code </b><%=Model.CustomerCode %><br />
   <b> Amount</b> <%=Model.Amount %><br />
</div>

我在Id和金额中总是得到0而在CustomerCode中是空白。

有任何线索吗?为什么会这样?有什么问题?

1 个答案:

答案 0 :(得分:4)

您的问题是您设置的是id,而不是name。设置名称以获取回发值。例如:

<input type="text" name="Customerid" />

另请阅读:HTML input - name vs. id在“用于提交信息的表单元素”

行中