0

每当我尝试从下拉列表中更改值时,它都会重定向到其他 URL。

无论如何,我只是有一点问题..

当我尝试更改价值时,我没有获得品牌价值,它向我显示:'未定义'

任何想法?

  <select id="brand" onchange="gotoPage()">

        <?php 
          $brands = dfr_get_brands_list($category);
        foreach ($brands as $brand) : ?>

               <option><?php echo $brand; ?></option>

        <?php endforeach; ?>

        </select>


        <?php if (@$_GET['brand']) { ?>


         <a href="[server.url type='fullpage' query='-brand']"><FONT COLOR="red"><?php echo"[[X] Remove Brand "; ?><?php echo @$_GET['brand']; ?></font></a>


        <?php } ?>


        <script>

          function gotoPage(){
            var url = "http://laptopsisland.com/shop/c/laptops/";
            var sel = document.getElementById("brand");
            var brand = sel.options[sel.selectedIndex].text;

            alert(brand);

            window.location.href = url + "&brand=" + brand;
        }

          </script>
4

2 回答 2

0

我会机会你的选择来展示这样的东西

<option value="<?php echo $brand; ?>"><?php echo $brand; ?></option>

然后得到 Bokonic 提到的选定值

sel.options[sel.selectedIndex].value

让我知道它是如何工作的。

于 2012-11-07T21:03:10.770 回答
0

您无需更改生成代码。

您也不需要使用 getElementById。

<script>
function gotoPage(e) {
    var brand = e.options[e.selectedIndex].text;
    alert(brand);
}
</script>
<select id="brand" onchange="gotoPage(this)">
    <option>aaa</option>
    <option>bbb</option>
</select>

工作解决方案:http: //jsfiddle.net/2YzAV/2/

带有值的版本:http: //jsfiddle.net/2YzAV/3/

于 2012-11-07T21:18:05.260 回答