MVC Несколько кнопок отправки на массив объектов - PullRequest
0 голосов
/ 20 апреля 2010

У меня есть список объектов в виде MVC, каждый с набором кнопок отправки - Переместить вверх, Переместить вниз и Удалить.

Используя ответ из этого вопроса, я могу нажать кнопку - но мне нужно знать, над каким элементом он будет работать.

Проблема связана с тем, что атрибут входного значения передан обратно, мне нужно больше информации, чем это - то есть идентификатор.

Ниже приведен фрагмент содержимого цикла for для каждого элемента.

<ul>
    <li><input type="submit" name="SubmitButton" value="Move-Up" class="linked-content-position-modifier" /></li>
    <li><input type="submit" name="SubmitButton" value="Move-Down" class="linked-content-position-modifier" /></li>
    <li><input type="submit" name="SubmitButton" value="Remove" class="linked-content-modifier" /></li>
    <li><%= Model.Contents[i] %></li>
</ul>

Когда форма отправляется обратно, я вижу, что SubmitButton имеет значение Move-Up, Move-Down или Remove - но понятия не имею, на какой элемент массива он ссылается.

Не изменяя значение на что-то действительно безобразное, как бы я сказал, к какому элементу оно относится?

Ответы [ 2 ]

0 голосов
/ 21 апреля 2010

Почему вы используете кнопку?

Может ли ссылка работать вместо?

<a href="controller/MoveUp/<%= Model.Id %>">Move Up</a>

Я использую аналогичный код для обновления элементов в таблице, но я делаю это с помощью JavaScript и соответственно обновляю таблицу ...

<script type="text/javascript">
    $('img.action').click(function(){
        var itemId = this.attr('id'); // Do some parsing of the id here, i use a format of bi-##

        $.ajax({ uri: 'controller/MoveUp/' + itemId });
    });
</script>
0 голосов
/ 20 апреля 2010

Просто быстрая идея, но, возможно, вы можете попробовать добавить скрытое поле в каждую строку и посмотреть, какой из них будет отправлен?

...