2014-02-18 107 views
1

我有一個(簡單)ASP MVC視圖:ASP MVC提交按鈕沒有做任何事情。在所有

<div class="row"> 
    <div id="dashboard-left" class="col-md-8"> 
     @using (Html.BeginForm("ConfigureOffers", "Offers", FormMethod.Post, new { enctype = "multipart/form-data" })) 
     { 
      @Html.AntiForgeryToken() 
      <div style="padding-bottom: 10px;"> 
       <p style="font-size: large;"><strong>Available</strong></p> 
      </div> 
      <div class="accordion" id="accordion2"> 
       <div class="widget" style="background:#fff !important"> 

        @{ 
         int i = 0; 
        } 
        @foreach (var prod in Model.allProducts) 
        { 
         <div class="accordion-group"> 
          <div class="accordion-heading"> 
           <a class="accordion-toggle" data-toggle="collapse" data-parent="accordion2" href="#[email protected](i)"> 
            <h4 class="widgettitle" id="QuickTitle">> @prod.Description_VC</h4> 
           </a> 
          </div> 
          <div id="[email protected](i)" class="accordion-body collapse" style="height: 0px;"> 
           <div class="accordion-inner" style="margin-left: 10px;"> 
            <div style="padding-bottom: 10px;"><strong>Total product:</strong> @{ 
             for (int k = 0; k < Model.OfferHeaders.Count(); k++) 
             { 
              if (Model.OfferHeaders[k].Product_ID == prod.Product_ID) 
              { 
               @Html.TextBoxFor(o => o.OfferHeaders[k].Amount_DEC); 
               break; 
              } 
             } 
            } 
            </div> @*prod div*@ 
           </div> @*accordion-inner*@ 
         @{i++;} 
          </div> 
         <div style="clear:both;"></div>        
        </div> 
        } 
       <input type="submit" class="btn btn-default" value="Save Changes" /> 
       </div> @*widget*@ 
      </div> @*accordion*@ 
      } 
    </div> 
    <!-- col-md-4 --> 
</div> 
<!--row--> 

這種觀點從另一個(工作頁)拍攝的基礎,但由於某些原因,點擊提交按鈕不會觸發服務器詳細請參閱BeginForm元素。我沒有從Visual Studio中得到任何錯誤,也沒有從瀏覽器控制檯發現任何JavaScript錯誤,並且似乎沒有任何事情發生在服務器端。

+0

這是可能的,它是由客戶端驗證堵塞,請檢查您的視圖模型,看看是否有您定義的任何驗證規則均已被違反。 – tweray

+0

我已經從VM中刪除了所有客戶端驗證以嘗試解決問題。 –

回答

0
  • 一個可能的原因行動沒有發生主要是當你把 行動中查看,也創建的頁面。但我想你 已經忘記在控制器中提到ActionResult

  • 另一種可能的選擇是你必須在控制器使用[HttpPost]你上面的 方法,其中指定的ActionResult

[HttpPost] 
public ActionResult ConfigureOffers(ModelClass instance) 
{ 
    ... 
} 
0

其他可能的原因

  • 條的路線不正確
  • 表單動作屬性是不正確的
  • 您正在使用嵌套FORM標記