Grails g: название кнопки из параметров и не используемая форма - PullRequest
0 голосов
/ 30 мая 2011

Есть ли возможность иметь кнопку, которая будет выполнять и действовать в контроллере без формы? Кроме того, я хотел бы сделать что-то подобное, но я вижу, что это невозможно:

<g:form action="addFavourite">
                                                <td>
        <g:submitButton name="${it.area.name}" value="Add" class="button small blue"/><br><br>
        </td>
                       </g:form>

Имена кнопки со значением, полученным из контроллера, не работают. Любая возможная альтернатива для этого? Это дает мне нулевой код ошибки. И я на 100% уверен, что значение не равно нулю.

Ответы [ 3 ]

1 голос
/ 30 мая 2011

Вы можете создать кнопку вне формы, которая выполняет действие контроллера при нажатии, используя тег remoteFunction

<button type="button" name="myButton"
    onclick="${remoteFunction(action:'bookByName', controller: 'book'
    params:'\'bookName=\' + this.value')}">Click Here</button>
0 голосов
/ 31 мая 2011

Что здесь означает «это»?Я думаю, что это виновник ..

<g:submitButton name="${it.area.name}" value="Add" class="button small blue"/>
0 голосов
/ 30 мая 2011

Это отчасти зависит. Если вы хотите кнопку для отправки на сервер через стандартный POST, то нет. HTML даже не имеет кнопки, которая работает без формы. Вы можете подделать это с помощью ссылки на изображение, которая выглядит как кнопка, но на самом деле она просто отправляется через стандартный тег привязки. И это будет выполнять GET, а не POST.

Однако, если вы хотите использовать ajax, вы можете пропустить теги Grails (как я часто это делаю) и использовать элемент HTML BUTTON. Можно даже использовать функцию remoteFunction для вызова ajax, если хотите.

ОБНОВЛЕНИЕ: Дох! 2 одинаковых ответа. :)

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