如何在查询中基于ID更改选择框的值

时间:2017-11-12 12:29:45

标签: javascript jquery

我有一些选择框,我想根据我查询它们的ID更改默认选项。我希望此操作保持所选选项刷新整个页面。我编写了javascript代码,但它无法正常工作,在某些情况下,它会为selectboxes返回错误或null值。 如何在页面刷新后改进我的代码以保持选定的选项? 这是我的代码:

document.getElementsByName("continent1")[0].value=[##cms.query.continent1##]
document.getElementsByName("continent2")[0].value=[##cms.query.continent2##]
<html>
<head>
</head>

<body>
<select name="continent1">
  <option value="">First continent</option>
  <option value="123">Asia</option>
  <option value="321">Africa</option>
  <option value="478">America</option>
</select>

<br/>
<br/>

<select name="continent2">
  <option value="">Second continent</option>
  <option value="001">Euroupe</option>
  <option value="002">Australia</option>
  <option value="003">Asisa</option>
</select>



</body>

</html>

1 个答案:

答案 0 :(得分:1)

使用此代码保存存储在网址中的获取参数,然后设置您的值:

<强>的Javascript

    var options = window.location.search.slice(1)
              .split('&')
              .reduce(function _reduce (/*Object*/ a, /*String*/ b) {
                   b = b.split('=');
                   a[b[0]] = decodeURIComponent(b[1]);
                   return a;
              }, {});

    document.getElementsByName("continent1")[0].value=[options.continent1];
    document.getElementsByName("continent2")[0].value=[options.continent2];