我想将dropdown.selectedIndex更改为“text”而不是当前的“value”

时间:2013-11-05 08:52:30

标签: javascript php drop-down-menu selectedindex

我在网站上有一个javascript下拉列表,这是代码 -

           <?php
                function get_request_uri_without_page() {
                    $pageURL = 'http';
                 if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
                 $pageURL .= "://";
                 if ($_SERVER["SERVER_PORT"] != "80") {
                  $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
                 } else {
                  $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
                 }
                    $request = explode('/page/',$pageURL);
                    $request = explode('?', $request[0]);
                    return $request[0];
                }
            ?>
            <form action="<?php echo get_request_uri_without_page(); ?>" method="get" id="catselect" class="form-archive-140">
                                        <!-- DROP DOWN HERE -->
                <?php global $jtCatId; $jtCatId = true; wp_dropdown_categories('show_count=1&hierarchical=1&child_of=140&class=selectmenu&id=cat&show_option_none=Please Choose...'); ?>
                <script type="text/javascript">
                   <!--
                    var dropdown = document.getElementById("cat");
                    function onCatChange() {
                        if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
                            location.href = "<?php echo get_request_uri_without_page(); ?>?cat="+dropdown.options[dropdown.selectedIndex].value;
                        }
                    }
                    dropdown.onchange = onCatChange;
                    -->
                </script>

此下拉列表的输出是按位置过滤的帖子列表,但URL结构如下 -

thewebsite / themaincategory?猫= 141

我想用类别名称替换最后的类别id,当我将dropdown.selectedIndex替换为“text”时,下拉列表不起作用,它不会给出错误它只是没有做任何事情。

我是否需要在htaccess中进行重写,或者是否可以使上述代码正常工作。

如果这是一个愚蠢的问题,我想提前道歉,我是javascript的新手,只是想找到自己的方式。

这是上面提到的一个工作示例 -

http://www.theweddingdirectory.co.za/professional-wedding-photographers

1 个答案:

答案 0 :(得分:0)

尝试这样的事情

  var cat= document.getElementById("cat");
  var text = cat.options[cat.selectedIndex].text;

已编辑的代码

        function onCatChange() {
             if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
                 location.href = "<?php echo get_request_uri_without_page(); ?>?cat="+dropdown.options[dropdown.selectedIndex].text.trim();
             }
         }