Почему jQuery, Rails и Chrome время от времени отправляются? - PullRequest
0 голосов
/ 11 февраля 2011

Столько проблем при попытке получить текстовую ссылку для отправки формы в Chrome с использованием Rails и jQuery.

Я пробовал много комбинаций, и одна из них, которая, похоже, лучше всего работает в Chorme:

$('form:first').trigger('submit')

Это безумие ... Почему это сработало бы в первый раз, второй, а иногда и третий, но потом перестало работать?

Вот код Rails, который отображает кнопку отправки текстовой ссылки:

<li><%= link_to raw("<span class='button approve'><span><span>SAVE</span></span></span>"), "index_users", :onclick=>"$('form:first').trigger('submit')"%></li>

Я тоже пробовал этот код с такими же спорадическими результатами в Chrome:

$(this).closest('form').submit();

Любая помощь очень ценится.

Отредактировано:

Вот то, к чему относится тег формы:

<form method="post" id="form1" data-remote="true" class="search_form general_form" action="/settings/2/update_user" accept-charset="UTF-8">

А вот к чему относится текстовая кнопка:

<li><a onclick="$(this).trigger('click');" href="index_users"><span class="button approve"><span><span>SAVE</span></span></span></a></li>

Код onclick меняется, так как я пробую всеЯ могу найти.Еще раз спасибо за ваш совет.

Ответы [ 3 ]

1 голос
/ 11 февраля 2011

Немного сбивает с толку, чтобы увидеть, что вы пытаетесь сделать с link_to raw.Почему бы вам сначала не сделать что-то очень простое с формой отправки?Я не вижу форму или действие, которое служит отправке.и т.д.

0 голосов
/ 15 марта 2016

Я подозреваю, что ваша проблема связана с прослушивателями событий Javascript - их правильное завершение для UJS (который, я полагаю, вы вызываете с атрибутом data-remote="true" в вашей форме) может быть сложным.

Что делает вашконтроллер рендеринга при обновлении пользователя?HTML?Javascript?

0 голосов
/ 11 февраля 2011

Я закончил тем, что использовал

$(this).closest('form').submit();"

и я думаю, что другой ключ был для нас "#"

<% = link_to raw ("SAVE"), "#",: onclick => "$ (this) .closest ('form'). Submit ();"%>
...