Rails 2: добавить двойные диалоги подтверждения

В настоящее время я пытаюсь выполнить двойной диалог подтверждения в submit_tag.

Я имею в виду, предположим, что вы хотите удалить сообщение, и вы хотите, чтобы всплывающее окно JavaScript отображало всплывающее окно, подтверждающее ваш выбор. Вы бы сделали это с помощью:

<%= link_to 'Delete', @post, :confirm => 'Are you sure?', :method => :delete %>

Когда пользователь нажимает кнопку, появляется предупреждение, запрашивающее подтверждение.

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

В основном: user clicks → first popup "Are you sure?" → second popup → "Are you really sure?" user clicks → first popup "Are you sure?" → second popup → "Are you really sure?"

Я использую jQuery и отбросил Prototype.

1 ответ

Я предполагаю, что простой способ состоял бы в том, чтобы функция jQuery вызывалась при нажатии ссылки. Что-то вроде:

function **************() {
 var confirm1 = confirm('Are you sure?');
 if (confirm1 === true) {
 return confirm('Are you really sure?');
 }
 return false;
}

Как примечание, я не думаю, что это действительно хорошее поведение. Это будет очень раздражать, если пользователь должен будет подтвердить все в два раза. Вероятность заключается в том, что они привыкли дважды щелкнуть ok, чтобы это не помешало случайному удалению. Более удобным для пользователя способом может быть разрешение на отмену. Вы можете попробовать использовать paper_trail: https://github.com/airblade/paper_trail (используя ветку rails2).

licensed under cc by-sa 3.0 with attribution.