Передать идентификатор формы ajax при отправке

У меня есть несколько форм ajax на странице, которые содержат одни и те же элементы, у меня есть функция jquery при успешном выполнении, которая ищет дочерние элементы формы и обновляет, но мне нужно каким-то образом передать идентификатор формы, которая отправила запрос контроллеру вместе с другими значениями из формы, как лучше всего это сделать? Возможно, добавьте скрытое поле в форму, а при загрузке страницы получите родительский идентификатор и поместите его в это поле с помощью jQuery. Но я не знаю jquery так хорошо, чтобы сделать это.

@using (Ajax.BeginForm("Index", "Controller",new AjaxOptions { OnFailure = "error", OnSuccess ="sucess" }))
           {
                <input type="submit" name="value" class="up" value="1" />
                <span class="result">0</span>
                <input type="submit" name="value" class="down" value="-1" />
           }


 public ActionResult Index(int value ,string formID)
        {
           //do something
        }

function sucess(arg) {

        var json = $.parseJSON(arg.responseText);

        var form = $("form#" + json.FormID);

        var up = form.children('input.up');

        var down = form.children('input.down');

        form.children('span.result').replaceWith(json.Result);

        if (json.Result == 1) {

            up.addClass('active');

        }

        if (json.Result == -1) {

            down.addClass('active');

        }
    }

ОБНОВЛЕНИЕ: это частичное представление, которое загружается n раз, поэтому я не могу узнать formID, пока страница не отобразится в браузере.

0
задан formatc 30 March 2012 в 09:20
поделиться