选择在没有 Javascript 的情况下重定向的下拉列表



是否可以创建一个下拉列表,当用户选择没有javascript的选项时重定向用户?

当用户在下拉列表 A 中选择一个类别时,我会使用 Javascript 显示下拉列表 B(具有子类别)。我想让它在没有Javascript的用户中类似地工作。我的想法是在用户在第一个下拉列表中选择一个选项时将用户重定向到不同的页面。

没有javascript这可能吗?怎么能做到呢?(如果可能的话,建议一些东西)

虽然诚然不优雅,但我得出了这个解决方案;

<form action="/" method="GET">
    <select name="path">
        <option value="home">Home</option>
        <option value="services">Our services</option>
        <option value="portfolio">Portfolio</option>
    </select>
    <input id="fallback-go" type="submit" value="Go" />
</form>

选择"Our Services"然后单击Go将导致它们被发送到/?path=services

不幸的是,我无法理解在选择更改时自动执行此操作的方法,如果我这样做,我会发布回复。

为了向支持 JavaScript 的用户隐藏 Go 按钮,可以实现这一点;

<head>
    <style>
        #fallback-go { display: none; }
        .no-script #fallback-go { display: block; }
    </style>
</head>
<body class="no-script">
    <script>document.body.classname = '';</script>
    [ other HTML ]
</body>

至于你的双层下拉菜单;这是使用纯CSS解决方案可以实现的。纯CSS解决方案的问题在于,由于缺乏伪元素支持,它不能很好地与IE7配合使用。

如果你想要全方位的支持,我建议实现JavaScript解决方案来保持IE7的水准,以及一个纯粹的CSS解决方案来保持noscript的快乐。

作为一个noscript用户,我非常感谢你的努力。

No.最简约的解决方案是在HTML中使用内联JS。


注意:您要支持哪种类型的浏览器?甚至IE7也有你需要的JS支持。

相关内容

最新更新