Проблема при отправке данных формы через JQuery UI Dialog на сервер - PullRequest
1 голос
/ 22 марта 2012

У меня есть приложение asp.net mvc, использующее диалоговое окно JQuery UI.Я пытаюсь отправить данные формы в метод действия контроллера.Я ударил метод действия, но мой объект не имеет данных.Ты знаешь почему?

Из Filter.cshtml

$("#selectUnits").dialog({
        autoOpen: false,
        title: 'Select Units',
        width: 400,
        modal: true,
        minHeight: 200,
        buttons: {

            "Cancel": function () {

                $(this).dialog("close");
            },

            "Submit": function () {

                $.post('/Data/SetUnitNumbers', $("#frmSelectedUnits").submit(), function (data) {

                    alert('This worked');
                });

            }

        }  // END OF BUTTONS

    });  //END OF DIALOG

Из контроллера ... Метод действия:

 public void SetUnitNumbers(object data)
    {
        int a = 5;            
    }

Из SelectUnits.cshtml, где живет форма 'frmSelectedUnits'.По сути, это набор значений флажков, которые я пытаюсь отправить обратно на сервер:

<body>

<form id="frmSelectedUnits" action="/" >

    <div id="unitNumberCheckboxes" style=" ">
        <div>
             @Html.CheckBox("SelectAllUnitNumbers", false)<label for="SelectAllUnitNumbers"><b>Select/Unselect All Units</b></label>
        </div>
        <div id="unitCheckboxes">


             @foreach (var item in Model)
                {                                            
                    <div style="float:left">

                            @Html.CheckBox("UnitNumbers", false)<label for="UnitNumbers">@item.unit_number.ToString().PadLeft(3, '0')&nbsp;&nbsp;&nbsp;</label>

                    </div>
                }                                
        </div>

    </div>

</form>


</body>

1 Ответ

0 голосов
/ 22 марта 2012

jQuery .post:

$.post(url, data, success-callback-function);

где data is A map or string that is sent to the server with the request.

Вызов $("#frmSelectedUnits").submit(), вероятно, не сработает.

Попробуйте:

$.post('/Data/SetUnitNumbers', $("#frmSelectedUnits").serialize(), function (data) {
    alert('This worked');
});

jQuery документы по .serialize ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...