Javascript ASP.NETMVC表单提交不会再次触发控制器操作方法。

Javascript ASP.NETMVC表单提交不会再次触发控制器操作方法。,javascript,c#,jquery,asp.net-mvc,Javascript,C#,Jquery,Asp.net Mvc,我有一个局部视图,它有一个带有多个下拉列表和一个提交按钮的表单。submit操作调用用HttpPost修饰的控制器操作方法。当我运行应用程序时,页面加载良好,提交第一次就可以完美地工作。如果我导航出页面并返回到页面,然后尝试提交,它根本不会点击操作方法,而是使用前面的值加载页面 <h4>Filters</h4> <b>Season </b> <br /> @

我有一个局部视图,它有一个带有多个下拉列表和一个提交按钮的表单。submit操作调用用HttpPost修饰的控制器操作方法。当我运行应用程序时,页面加载良好,提交第一次就可以完美地工作。如果我导航出页面并返回到页面,然后尝试提交,它根本不会点击操作方法,而是使用前面的值加载页面

        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>
我的看法

        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>

我不知道我做错了什么

我承认这是一个无中生有的尝试,但请尝试在上面添加[NoCache]装饰器
        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>

[HttpPost]在控制器中

我可以通过重新编写表单定义来解决这个问题,如下所示:

        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>
     @using (Html.BeginForm("Index", "Home", FormMethod.Post, new { @class = "FilterForm" }))
{

        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>

}

你好-谢谢!但是我一点也没看到一个NoCache装饰师!是OutputCache装饰器吗?我看到你找到了[NoCache],很抱歉它不适合你。无可否认,这只是一件值得尝试的事情。无论如何,谢谢。我仍在努力解决这个问题:
        <h4>Filters</h4>
        <b>Season         </b>
        <br />
        @Html.DropDownList("SeasonTables", ViewBag.Seasons as SelectList, "...Select Season...", new { @class = "form-control", id = "cmbSeason", style = "width:250px;" })
        <br />
        <br />
        <b>Product Group  </b>
        <br />
        @Html.DropDownList("ProductGrpTable", ViewBag.ProductGrp as SelectList, "...Select Product Grp...", new { @class = "form-control", id = "cmbProductGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Delivery Group </b>
        <br />
        @Html.DropDownList("DeliveryGrpTable", ViewBag.ProductDelGrp as SelectList, "...Select Delivery Grp...", new { @class = "form-control", id = "cmbDeliveryGrp", style = "width:250px;" })
        <br />
        <br />
        <b>Division       </b>
        <br />
        @Html.DropDownList("DivisionTable", ViewBag.DivisionList as SelectList, "...Select Division...", new { @class = "form-control", id = "cmbDivision", style = "width:250px;" })
        <br />
        <br />
        <br />
        <br />
        <br />
        <p>
            <input type="submit" value="submit" />
        </p>


    </div>
</form>
</div>