如何将下拉列表的选定值提取到另一个下拉列表

时间:2013-02-27 05:21:21

标签: php onchange html-select selectionchanged

我正在开发一个用于执行2个下拉列表值的php文件。

在我的下拉列表中,我有类别列表,如Item1,Item2,Item3,Item4,......

在另一个下拉列表中,我将第一个列表中的每个类别的子类别分为A,B,C,D,E,F ......

我的想法是,在更改第一个列表的值时,我需要将值传递给第二个列表......

这意味着,如果我更改第二个列表中的值,它必须获取在第一个列表中选择的值...

所有类别的子类别相同。但在我的计算中,我使用了每个类别和子类别的价格..

所以,..

项目1 - > A = 100 第2项 - > A = 75 项目1 - > B = 198 第2项 - > B = 146 项目1 - > C = 160 第2项 - > C = 175

我需要获取Selected项目,以检索我的计算金额...

我怎么能实现这个......

<select name="Category1" size="1" id="Category1" >
  <option value="Item1">Item1</option>
  <option value="Item2">Item2</option>
  <option value="Item3">Item3</option>
  <option value="Item4">Item4</option>
  <option value="Item5">Item5</option>
  <option value="Item6">Item6</option>
</select>
<select name="Category2" size="1" id="Category2" onchange=function()>
  <option value="A">A</option>
  <option value="B">B</option>
  <option value="C">C</option>
  <option value="D">D</option>
  <option value="E">E</option>
  <option value="F">F</option>
  <option value="G">G</option>
  <option value="H">H</option>
</select>

这里我需要在函数()...

中获取Category1的选定值

2 个答案:

答案 0 :(得分:0)

您的语法错误尝试

<select name="Category2" size="1" id="Category2" onchange="function(document.getElementById('Category1').value);">

select发生更改时将category1的值作为参数传递。

OP评论回复

<script type="text/javascript">  
    function changeFunction(cat)
    {
        alert(cat);
    }
</script>

<select name="Category1" size="1" id="Category1" >
    <option value="Item1">Item1</option>
    <option value="Item2">Item2</option>
    <option value="Item3">Item3</option>
    <option value="Item4">Item4</option>
    <option value="Item5">Item5</option>
    <option value="Item6">Item6</option>
</select>
<select name="Category2" size="1" id="Category2" onchange="changeFunction(document.getElementById('Category1').value);">
    <option value="A">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    <option value="D">D</option>
    <option value="E">E</option>
    <option value="F">F</option>
    <option value="G">G</option>
    <option value="H">H</option>
</select>

上面的代码现在经过测试检查我相信它会起作用。

答案 1 :(得分:0)

虽然我的答案类似于Devang,但稍微更恰当的方法可能是这样:

<select id="category" onchange="calculatePrice">
  ...
</select>
<select id="subCategory" onchange="calculatePrice">
  ...
</select>
<input id="price">

<script>
  function calculatePrice() {
    var category = document.getElementById('category').value,
        subCategory = document.getElementById('subCategory').value;

    if (category && subCategory) {
      document.getElementById('price').value = ...;
    }
  }
</script>