У меня есть приложение с клиентами, у которых есть задачи. Чтобы создать новую задачу для клиента, вы можете щелкнуть значок добавления, который открывает fancybox с новой формой задачи. У этого есть следующий сценарий кофе:Показывать подтверждение перед fancybox
jQuery ->
$("a.fancyForm").fancybox
scrolling: "no"
titleShow: false
Однако клиенты также должны иметь цель работать в противном случае, задачи не нужны. Таким образом, отношения на самом деле у клиента есть много целей, которые имеют много задач. Если у клиента уже есть некоторые цели, тогда форма просто спросит вас, к какой цели он стремится. Если у клиента нет цели, я хочу открыть окно подтверждения, которое спрашивает, хочет ли пользователь сделать цель сейчас. Это сценарий кофе я в настоящее время:
$("a.noGoals").click (e) ->
e.preventDefault()
confirm_create_goal = confirm("There is currently no Goal for this customer. Would you like to create one?")
if confirm_create_goal
$("a.noGoals").fancybox()
else
alert "You won't be able to create tasks until a goal is created!"
Это вызывает окно подтверждения щелчка ОК, кажется, не делать ничего. Если вы затем попробуете второй раз, отобразится окно подтверждения, и если вы нажмете ok или отмените его, отобразится правильный fancybox с моей новой формой. Как мне заставить это работать в первый раз? Кажется, что при первом нажатии ok он устанавливает только confirm_create_goal, а затем во второй попытке открывается только fancybox.
Если я нажму «отменить» при первой попытке, он правильно отобразит предупреждение. Вторая попытка я ударил "нормально" без fancybox. Третья попытка ударить «хорошо» получить fancybox, но если я нажму «отменить», я получу предупреждение, а затем fancybox o.O
hmm ... быстро попробовал избавиться от этого вызова (изменилось подтверждение на => «В настоящее время нет цели. Вы хотите создать ее?»), И она не изменила поведение. Предупреждение будет достигнуто, если вы нажмете отменить даже при первой попытке. Быстро отредактируйте вопрос, чтобы это отразить. –
Обновлен мой ответ. Вы не используете fancybox() правильно для того, что хотите. – chubbsondubs
Спасибо, я действительно писал свое решение, когда вы разместили это. Пришел к такому же выводу с немного странным обходным путем. Дайте мне знать, что вы думаете. –