我有一个带有两个select
元素的表单,其中我在父选择上绑定一个onchange
事件,该事件使用ajax填充子选择的选项。我将事件绑定到jQuery,但为了简单起见,在下面的示例中使用了onchange
属性。
<select id="parent_select" onchange="getOptions($(this).val(),'child_select');">
<option>A</option>
<option>B</option>
...
</select>
<select id="child_select"></select>
提交表单将用户带到一个新页面。如果他们使用浏览器的“后退”按钮返回,父选择仍然有被选中的选项(至少在chrome中是这样)。但是,不会填充子选择,这是预期的。
说明这种情况并填充子选项的最佳方法是什么?
到目前为止,我已经想出了在$(document).on('ready',function(){...});
中检查父程序是否有选择选项的方法。有更好的方法吗?
发布于 2013-10-23 11:30:05
可以使用URL哈希记录和还原页状态。
请参阅:Working with single page websites and maintaining state using a URL hash and jQuery
主要示例向您展示了如何使用哈希。您需要记录使用像#S1=3
这样的元素来选择哪个元素,然后在页面加载时查找该值,并相应地设置SELECT
索引。
https://stackoverflow.com/questions/19550426
复制相似问题