将按钮设置为禁用时,Request.Form为null

时间:2015-06-16 07:36:05

标签: c# asp.net-mvc razor

我的屏幕上有两个按钮,我正在使用一种方法处理: Request.Form [" Approve"]变为空,因为我已禁用按钮,如何在禁用按钮后获取Request.Form [" Approve"]的值。

 @if(ViewBag.RequestAlreadyProcessed)
 { 
     <input type="submit" class="btn btn-primary btn_box" value="Approve" name="Approve" disabled="disabled" />
     <input type="submit" class="btn btn_secondary btn_box" value="Reject" name="Reject" disabled="disabled"/>
 }
 else
 {
     <input type="submit" class="btn btn-primary btn_box" value="Approve" name="Approve" />
     <input type="submit" class="btn btn_secondary btn_box" value="Reject" name="Reject" />
 }

Controller:
public async Task<ActionResult> Approve(UserApprovalModel UserApprovalModel)
{
    if (ModelState.IsValid)
    {
        if (Request.Form["Approve"] != null)
        {
            userReg.StatusCd = "APP";
        }
        else
        {
            userReg.StatusCd = "REJ";
        }
   }
   if(userReg.StatusCd == "APP")
   {
       userReg.StatusComment = "Approved";
   }
   else if(userReg.StatusCd == "REJ")
   {
      userReg.StatusComment = "Rejected";
   }
}

1 个答案:

答案 0 :(得分:0)

浏览器不提交禁用控件,因为它们是只读的 您的问题有一种解决方法,您可以使用readonly="readonly"字段代替disabled="disabled"吗?只读字段值将提交给服务器,同时仍然是用户不可编辑的。 SELECT标签是一个例外。

另外作为旁注,

  

已禁用的控件无法获得焦点    已跳过已禁用的控件   在标签导航中。
   禁用的控件无法成功   帐。