2016-02-08 2 views
0

Im пытается реализовать кнопку возврата на форму, которую я разрабатываю, когда при нажатии выводится всплывающее окно подтверждения, позволяющее пользователю выбрать ok или отменить. Код, который у меня есть для этой кнопки, выглядит следующим образом.Кнопка возврата Javascript с подтверждением

function goBack(){ 
    window.history.back(); 
    } 
<button type="back" value="back" onclick="goBack()">Back</button> 

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

+2

Где-то у вас есть код, который, вероятно, использует что-то вроде 'onbeforeunload', запрашивающая форму будет завершена, браузер не делает это на своем собственном. – adeneo

ответ

0

Я использую только кнопку для отправки формы, для этого кнопка типа ввода работает правильно.

<input type="button" onClick="javascript:history.back();" value="back" /> 
0

Нет типа = «назад» для кнопок. Просто используйте:

<button value="back" onclick="goBack()">Back</button> 

или

<input type="button" onclick="goback()" value="Back"> 

или быть уверены, используйте ссылку:

<a href="javascript:history.go(-1);">Back</a> 

Просто не использовать тип = "Отправить" и убедитесь, что вы не имеют любые функции, которые вызывают проверку входных данных форм, когда вы покидаете эту страницу!

0

Проблема в том, что back недействителен type для кнопки. Если вы не хотите, чтобы форма была отправлена, используйте тип button. Это должно решить вашу проблему.

function goBack(){ 
 
    if(confirm("Are you sure?")){ 
 
    window.history.back(); 
 
    } 
 
}
<form> 
 
    <!-- inputs here --> 
 
    <input required /> 
 
    <button type='button' onclick='goBack()'>Back</button> 
 
</form>

+0

Код теперь работает и выводит меня на предыдущую страницу. Спасибо за ваш ответ, очень признателен. –

Смежные вопросы