嗨,我正在购物车中。我需要知道,当用户更改选项时,即使在刷新页面后,也应将新选项设置为默认值。我该怎么做?请帮助我如何在刷新页面时保留下拉列表的选定值
回答
当用户选择该选项时,尝试将选项保存在cookie or a session by using a ajax call
中。
因此,即使页面被刷新,如果设置了cookie或会话变量,那么您可以使用"selected"
属性将其设置为默认值。
你只能用javascript来做。在这里,我正在使用JavaScript的jQuery库,最喜欢的。
* 逻辑
当用户从下拉菜单中选择您可以可以节省cokkie并在页面加载时,你可以从cokkie检索值和选项设置回的数据。
,并通过使用这个插件,你可以eaisly做到这一点
看到该插件:通过使用
if (jQuery.cookie('choosed')) { // checking if cokkie exist
$.removeCookie("test");
}
而且 https://github.com/carhartl/jquery-cookie
$(document).ready(function() {
if (jQuery.cookie('choosed')) { // checking if cokkie exist
$('<selector select>').val($.cookie("choosed")); // assiging value in select box
}
});
的形式提交,您可以删除的cookie onchange事件选择你可以通过这样做来设置。
$.cookie("choosed",$('<selector select>').val(); , {
expires : 10, //expires in 10 days
path : '/', //The value of the path attribute of the cookie
//(default: path of page that created the cookie).
domain : 'jquery.com', //The value of the domain attribute of the cookie
//(default: domain of page that created the cookie).
secure : true //If set to true the secure attribute of the cookie
//will be set and the cookie transmission will
//require a secure protocol (defaults to false).
});
谢谢。是否有其他一些方法?由于我对cookie不熟悉 – user1991
您将需要一个持久性存储,这将在页面刷新时保持您的数据。这只能通过浏览器中的cookie完成。或者现在,在html5中的本地存储可以做到这一点。或者你可以选择会话,但是你必须在服务器端进行调用,通过** ajax **将该值存储在会话变量中,方法是用户选择该选项。所以你可以反正这点。 – developerCK
你应该有一个自动保存,将在用ajax定期变量发送到服务器。 Donot将这些保存到数据库中,但将它们保存在SESSION或cookie上。
下面是使用会话实现它的一种方法。
例子:
<form action="backend.php" method="post">
Name : <input name="name" id="name_input" class="savable" value=<?php echo $_SESSION['save_name'];?>/> <br />
Father's name : <input name="fathername" id="fathername_input" class="savable" value=<?php echo $_SESSION['save_fathername'];?>/>
</form>
您可能需要检查是否设置了变量的value
场。
脚本:
function autoSave(){
$(".savable").each(function(){
$.ajax("save.php",{id:this.id, value:this.val()});
});
}
上述功能,应定期使用setInterval()
调用。
save.php:
$key = $_POST["id"];
$val = $_POST["value"];
$_SESSION["save_".$key] = $val;
希望这有助于。
- 1. 下拉列表刷新页面时保持选定值不变
- 2. 保留并保留提交时的旧下拉列表值并刷新页面
- 3. 页面刷新后保持下拉列表的选定值
- 4. 如何在刷新页面上保留选定的值?
- 5. 刷新时保留链接下拉的选定值
- 6. 如何在提交/页面刷新后保留下拉选择选项
- 7. 当页面重新加载时保留选定的下拉列表项
- 8. 如何在下拉列表中保留选定的值
- 9. 如何在java中保留下拉列表的选定值(struts)
- 10. 如何在页面刷新时保留复选框选择?
- 11. HTML下拉菜单保留页面刷新选择?
- 12. 下拉页面刷新后保留其选择
- 13. 页面刷新后在下拉框中保留选定的项目
- 14. 如何刷新页面上的下拉列表值更改?
- 15. 我如何保留JSP中下拉列表的选定值?
- 16. 下拉列表值返回---选择---页面刷新后
- 17. 保留下拉选择上刷新
- 18. 在刷新页面后保留值
- 19. 如何在页面重新加载后保留下拉值?
- 20. JSP下拉列表|刷新页面
- 21. yii在页面刷新时保存下拉选中状态
- 22. 保留页面刷新时的单选按钮值
- 23. 如何在保留在页面上的情况下刷新ReferenceManyField?
- 24. 如何在表单提交后保留下拉选定的值?
- 25. 下拉列表保留上一个选定的值在php
- 26. 保留在下拉列表中选定的值-Jquery
- 27. 如何在刷新后保留下拉值
- 28. 保留选择在页面刷新基于框的值
- 29. 如何在使用Angularjs刷新网页后保持下拉列表的选择
- 30. 保留阿贾克斯刷新后的选择下拉值
Cookie或会话变量 – Barmar
也许有点迂回,但本地存储或存储购物车服务器端也应该工作。 –