jQuery记住动态生成的选择框的值

玛拉基

我有以下代码:

var LWTable = {
  '6': [200, 200, 220],
  '8': [220, 220, 240],
  '10': [240, 240, 260],
  '12': [260, 260, 290],
  '15': [290, 310, 340],
  '18': [330, 360, 400],
  '21': [385, 420, 460],
}

var plengthOptions = '';
Object.keys(LWTable).forEach(function(key) {
  plengthOptions += '<option value="' + key + '">' + key + ' in.</option>';
});

$('#plength').append(plengthOptions).change(function() {
  var pwidthOptions = '';
  LWTable[this.value].forEach(function(width, i) {
    pwidthOptions += '<option value="Width' + (i + 1) + '">Width' + (i + 1) + ' (' + width + ')</option>';
  });
  $('#pwidth').html(pwidthOptions);
}).change();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="plength" id="plength"></select>
<select name="pwidth" id="pwidth"></select>

上面的效果很好(另请参阅jQuery Replace value in select 这取决于其他选择框)并且在 $( document ).ready(function() 但是..每当我重新加载页面时,我选择的任何内容都不再存在..它重置为默认值,这不是我想要的。如何让它“记住”值?我假设我需要使用 localStorage.getItem 和 localStorage.setItem,但是,我不知道如何使用。我尝试了一些方法,导致整个事情不再工作..

我如何/在哪里执行 getItem(获取正确的值)以及我在哪里执行 setItem,以便在值更改时设置它?

韦斯利·史密斯

我在所有项目中都使用以下内容,因此我所要做的就是添加data-local-key="some-key"到我想“记住”其价值的任何元素中。(不要忘记some-key为每个元素更改为有意义的东西并且与众不同,这样它们就不会在路上重叠。

查看工作jsFiddle

  $(document).on('blur','[data-local-key]',function(){
    var $this=$(this);
    if (window.localStorage) {
      window.localStorage.setItem($this.data('local-key'), $this.val());
    }
  });
  $('[data-local-key]').each(function(){
    var $this=$(this);
    $this.val(window.localStorage.getItem($this.data('local-key')));
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="" data-local-key="some-key" id="">
  <option value="a">a</option>
  <option value="b">b</option>
  <option value="c">c</option>
</select>

请注意,我没有将它与复选框一起使用,不确定是否可行,但我很少使用复选框,因此这不是问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

多个动态生成的选择提交时的 Jquery 选择值

来自分类Dev

使用 JQuery 获取动态创建的选择下拉框的值

来自分类Dev

动态生成的组合框值

来自分类Dev

如何通过Ajax发送2个选择框动态生成的值以获取第3个选择框值

来自分类Dev

获取jquery中动态添加的选择框和文本框的值

来自分类Dev

按动态生成的字段值的值选择

来自分类Dev

JQUery:在动态生成的选择选项列表中选择一个值

来自分类Dev

使用jQuery动态创建选择框

来自分类Dev

使用jQuery动态添加选择框

来自分类Dev

jQuery selectpicker从选择框默认选择的值

来自分类Dev

jQuery获取所有动态生成的选择

来自分类Dev

动态选择框如何从我的文本框值向选择框动态添加选项

来自分类Dev

使用jQuery提交时获取动态生成的文本框的值并验证所有文本框

来自分类Dev

如何使用数据框中的列名和唯一值在我的网页上生成动态选择字段?

来自分类Dev

jQuery选择并添加了动态添加的选择框

来自分类Dev

用jQuery获取选中的“选择框”的值

来自分类Dev

未设置选择框的jQuery值

来自分类Dev

选择框':selected'值验证jQuery

来自分类Dev

验证jQuery中的选择框值

来自分类Dev

jQuery获取多个选择框的选定值

来自分类Dev

jQuery:无法获取同名选择框的值

来自分类Dev

Kendo用户界面[kendoDropDownList]-OnSelect默认选择框值,动态更改其他选择框值

来自分类Dev

我已经在class = pricefield的div中创建了多个动态选择框。我想获取jQuery中的所有选择框值

来自分类Dev

根据R中的动态值从数据框中选择列

来自分类Dev

动态将选项值从数组添加到选择框

来自分类Dev

根据R中的动态值从数据框中选择列

来自分类Dev

将动态值填充到JBPM选择框中

来自分类Dev

获取在占位符中动态生成的文本框的值

来自分类Dev

在具有计算值的选择查询中生成动态序列

Related 相关文章

  1. 1

    多个动态生成的选择提交时的 Jquery 选择值

  2. 2

    使用 JQuery 获取动态创建的选择下拉框的值

  3. 3

    动态生成的组合框值

  4. 4

    如何通过Ajax发送2个选择框动态生成的值以获取第3个选择框值

  5. 5

    获取jquery中动态添加的选择框和文本框的值

  6. 6

    按动态生成的字段值的值选择

  7. 7

    JQUery:在动态生成的选择选项列表中选择一个值

  8. 8

    使用jQuery动态创建选择框

  9. 9

    使用jQuery动态添加选择框

  10. 10

    jQuery selectpicker从选择框默认选择的值

  11. 11

    jQuery获取所有动态生成的选择

  12. 12

    动态选择框如何从我的文本框值向选择框动态添加选项

  13. 13

    使用jQuery提交时获取动态生成的文本框的值并验证所有文本框

  14. 14

    如何使用数据框中的列名和唯一值在我的网页上生成动态选择字段?

  15. 15

    jQuery选择并添加了动态添加的选择框

  16. 16

    用jQuery获取选中的“选择框”的值

  17. 17

    未设置选择框的jQuery值

  18. 18

    选择框':selected'值验证jQuery

  19. 19

    验证jQuery中的选择框值

  20. 20

    jQuery获取多个选择框的选定值

  21. 21

    jQuery:无法获取同名选择框的值

  22. 22

    Kendo用户界面[kendoDropDownList]-OnSelect默认选择框值,动态更改其他选择框值

  23. 23

    我已经在class = pricefield的div中创建了多个动态选择框。我想获取jQuery中的所有选择框值

  24. 24

    根据R中的动态值从数据框中选择列

  25. 25

    动态将选项值从数组添加到选择框

  26. 26

    根据R中的动态值从数据框中选择列

  27. 27

    将动态值填充到JBPM选择框中

  28. 28

    获取在占位符中动态生成的文本框的值

  29. 29

    在具有计算值的选择查询中生成动态序列

热门标签

归档