MVC - 触发提交局部视图的情况下使用jQuery主视图(MVC - Trigger submi

2019-09-26 01:44发布

我在我的局部视图使用Ajax.BeginForm提交数据。

局部视图 - _getCategoryMaster.cs

<div>
    @using (Ajax.BeginForm("Submit", "CategoryMasterDataEntry", new AjaxOptions { OnSuccess = "OnDatatSuccess", OnFailure = "OnDataFailure", HttpMethod = "POST" }, new { enctype = "multipart/form-data" }))
    {
           <div style="float:left;width:100%;">
                <hr class="horizontal-line-bottom" />
                <div class="form-buttons tab-footer">
                    <button class="btn btn-md" type="submit" id="saveData" @if (TempData["DisplayAccess"].ToString() == "view") { <text> disabled </text>  }>SAVE</button>
                </div>
            </div>
     }
</div>

现在,我试图把这个从我父视图从Jquery的链接的点击事件提交事件

父视图 -

<html>
<head>
<script type="text/javascript">
 $(document).on('click', '.getProducts', function (e) {
        alert("Start");

        $('form#ajaxForm').trigger('submit');

        alert("End");
</script>
</head>
<body>
 <a id="anchId" href="javascript:void(0);" class="getProducts">
 <img src="~/Images/bullets.png" class="bullet-image" /> 
  <span class="menu-text">LinkName</span> 
  </a>
</body>
</html>

但它不是射击在报送局部视图的事件。 我得到的警报(开始和结束)。 但它没有触发该事件提交。

我在做什么错在这里?

Answer 1:

你不必与表单id="ajaxForm" 。 更换new { enctype = "multipart/form-data" } (因为你不能使用提交文件,这是毫无意义的Ajax.BeginForm()用) new { id= "ajaxForm" }

@using (Ajax.BeginForm("Submit", "...", new AjaxOptions { ... }, new { id = "ajaxForm" }))

或者简单地使用$('form').trigger('submit');



文章来源: MVC - Trigger submit event of partial view in main view using JQuery