在模式对话框MVC,jQuery中提交局部视图表单

时间:2011-06-24 10:16:38

标签: javascript jquery model-view-controller modal-dialog partial-views

这是我的代码:

<td class="tedit">
                    <%= Html.ActionLink(item.Comments, "Comments", new { jobNumber = item.JobNumber, ordNumber = item.OrderNumber }, new { @class = "modalEdit" })%>
 </td>



<div id="resultEdit" title="Edit Comments" style="display: none;">
       <% Html.RenderPartial("AddComments", Model.InnerModel.RoadReportModelProp); %>
</div>



 <script type="text/javascript">
        $(document).ready(function () {
            //initialize the dialog
            $("#resultEdit").dialog({ modal: true, width: 300, resizable: true, position: 'center', title: 'Add Comments', autoOpen: false,
                buttons: { "Save": function () {
                    var dlg = $(this);
                    dlg.Close();
                   }}
        });
                        });

        $(function () {
            $('.modalEdit').click(function () {
                //load the content from this.href, then turn it into a dialog.
                $('#resultEdit').load(this.href).dialog('open');
                $.unblockUI();
                return false;
            });
        });

      </script>

当我点击对话框中的SAVE按钮时,我需要向控制器发送POST请求,但我无法发送POST。

请帮忙。

3 个答案:

答案 0 :(得分:0)

您应该可以使用$ .post来保存数据。例如

$.post(url, data, function(response) {
    // Do something with response
});

您需要从对话框中收集数据。

此致

Huske

答案 1 :(得分:0)

您可以使用以下内容发布,此外,您是否可以提供您要发布的表单的代码,&amp;还有你创建的控制器:

<script type="text/javascript">
$(document).ready(function() {
    //get the form
    var f = $("#idofForm");
    var action = f.attr("action");
    var serializedForm = f.serialize();
    $.post(action, serializedForm, function() {
        alert('we are back');
    }
});
</script>

答案 2 :(得分:0)

  <div> 

        <% using (Html.BeginForm("Post-FormActionName", "Controllername"))
           {
        %>             

             <div class="fieldsColumn">

              <label>Name: *</label>
                <%=Html.TextBoxFor("Name")%>

        </div>

            <div class="fieldsColumn">

              <input id="submit" type="submit" value="Save"/>

        </div>


        <%}%>      

</div>