【问题标题】:how do i get the previous selected drop down item using javascript?如何使用 javascript 获取先前选择的下拉项?
【发布时间】:2011-03-09 07:31:13
【问题描述】:

我有一个下拉菜单,在单击列表中的任何项目时,我想要获取先前选择的项目。可以用javascript吗?

【问题讨论】:

  • 问题不清楚,如果我下次选择B时选择A,我应该得到A吗?第三次选择 C ​​会得到 B?
  • 是的,第一次我选择A然后B,下次我选择C时我应该得到A,我应该得到B

标签: javascript drop-down-menu


【解决方案1】:

你是说

<script>
var selHistory =[];
var sel; 
window.onload=function() {
  sel = document.getElementById('selID');
  sel.onchange=function() {
    selHistory[selHistory.length]=sel.selectedIndex;
  }
  sel.onchange(); // save the current option
}
function getPrev() {
  return (selHistory.length < 1) ? "no previous":sel.options[selHistory[selHistory.length-2]].value
}
</script>

或许

&lt;select onChange="var prevSel=(this.selectedIndex&gt;0) ? this.options[this.selectedIndex-1].value:'nothing previous'"&gt;

【讨论】:

  • 我认为当我选择 A 然后 B 然后 C 时这个解决方案会起作用。当我选择 B 然后 A 然后 C 时它会起作用吗?
  • 无论如何它都应该工作。当您更改选择并返回之前的任何内容时,它会将最后一个选择添加到数组中
【解决方案2】:

您可以将所选项目保存到某个 var 中,并在选择下一个项目时从中读取。

【讨论】:

  • 这是一些很好的建议,提问者可以在他了解更多 javascript 时使用一些时间;)但我不会称之为答案......
  • 你只是忽略了提供建议和执行别人的工作之间的区别)
  • 我不认为我的 10 行代码可以完成工作。但是,我确实将您的建议视为评论而不是答案...
猜你喜欢
  • 2016-01-13
  • 2012-06-11
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多