当我单击浏览器后退按钮时,jQuery在收音机上更改值

时间:2019-03-18 14:57:03

标签: jquery

我有2个单选按钮。

我选择第二个单选按钮并提交表格。然后,我单击浏览器的“后退”按钮,然后选中第一个单选按钮。我希望选择第二个按钮。

如何更改? :)

请帮助学生。

	$(document).ready(function() {
		
	  var $divs = $('#divs > div');
	  
	  $divs.first().show();
	  
	  $('input[type=radio]').on('change',function() {
		  
	    $divs.hide();
	    
	    $divs.eq( $('input[type=radio]').index( this ) ).show();
	    
	  });
	});
$html .= '<div class="all-donations-wrapper">';
				$html .= '<h2>'.$section_title.'</h2>';
				$html .= '<div class="gift-type">';
					$html .= '<h4>Gift type:</h4>';
					$html .= '<input id="id_radio2" type="radio" name="name_radio" value="value_radio2" checked="checked"/>';
					$html .= '<label for="id_radio2">'.$donation_title_one_time.'</label>';
					$html .= '<input id="id_radio1" type="radio" name="name_radio" value="value_radio1"/> ';
					$html .= '<label for="id_radio1">'.$donation_title_monthly.'</label>';
				$html .='</div>';

				$html .= '<div id="divs">';

1 个答案:

答案 0 :(得分:0)

你不能。

根据设计,浏览器后退按钮会将您带到您访问的最后一个网页-并没有完全保留DOM的最后已知状态。而且大多数用户都了解这一点。

您最好的选择是为页面创建自己的导航-您自己的“返回”按钮。

如果您尝试对后退按钮进行重新编程,您将把头撞在墙上。还要注意,您不能做以下任何事情:(a)用户离开您的页面,然后返回; (b)在页面上单击鼠标右键,然后选择“返回”(与“返回”按钮不同); (c)单击书签; (d)在地址栏中输入; (e)右键单击后退按钮,然后在浏览器的历史记录中再选择一个站点。

但是,您可以通过以下代码禁用后退按钮,强制用户使用您自己的完全托管后退按钮:

history.pushState(null, null, location.href);
window.onpopstate = function () {
    history.go(1);
};

参考:

https://codepen.io/dhavalt10/pen/rGLBzB

https://www.codeproject.com/Articles/696526/Solution-to-Browser-Back-Button-Click-Event-Handli

https://www.sitepoint.com/community/t/when-back-button-clicked-redirect-to-url/224503/5