单击时选择框自动重定向

Posted

技术标签:

【中文标题】单击时选择框自动重定向【英文标题】:Select box automatically redirects when clicked 【发布时间】:2015-02-26 06:44:47 【问题描述】:

我做了,选择框中的选项可点击。但是,对于第一个选项,我没有放置任何链接。但就在我单击选择框时,它会重定向到某个地方并说找不到页面。

但是,如果您单击箭头并按住一段时间,则会出现下拉菜单。现在,当您单击任何选项时,它都会起作用。但我想知道为什么一开始它不显示下拉菜单而只是重定向。

这里是 js 小提琴:http://jsfiddle.net/58cqc812/

html

<select id="myselect">
   <option>Go To ...</option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/">Home</option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/main/page/about-us">About Us &#9662;</option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/main/page/the-centre-point-of-any-web-projects">Centre-Point of Web Projects</option>
   <option><a href="#">Branches &#9662;</a>
        <?php #Core::getHook('block-branches'); ?></option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/main/news">News</option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/main/event">Events</option>
   <option value="<?php echo $data['config']['SITE_DIR']; ?>/contact">Contact Us</option>
</select>

JS

<script>
    //$('#myselect').on('change', function() 
  //location.href=$(this).data('url');
//);
document.getElementById("myselect").onclick = function(d)
  window.location = this.value;
;
    </script>

您可以参考实时站点。您需要将浏览器调整到最小,然后才会出现这个菜单。它适用于移动版本。 http://ymm.valse.com.my/

【问题讨论】:

【参考方案1】:

单击事件更改为更改事件....单击选择框时将触发。

     document.getElementById("myselect").onchange = function(d)
       window.location = this.value;
      ;

我不完全知道如何使用 javascript bcz 进行更改我更喜欢 jQuery

【讨论】:

这将触发,即使用户选择了第一个选项。即“转到”,我猜 OP 不想要。 是的,在更改时,您必须检查是否非空值然后才触发...是的@dev 你也可以正常工作.....【参考方案2】:

使用 jQuery

$("#myselect").change(function()
    if($(this).val()!=="")
        window.location = $(this).val();
    
);

【讨论】:

以上是关于单击时选择框自动重定向的主要内容,如果未能解决你的问题,请参考以下文章

使用 useHistory 重定向页面并在单击为 false 时删除图像

单击 Select2 选项时重定向 URL

加载另一个页面后重定向到一个页面后

Messi jQuery 确认框重定向

需要帮助在提交时重定向表单

Keycloak:如何将 Keycloak 用户自动重定向到 OKTA SSO 页面而不是单击按钮?