2

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

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

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

4

2 回答 2

2

虽然公认不优雅,但我已经找到了这个解决方案;

<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

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

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

<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 用户,我非常感谢您的努力。

于 2013-07-29T17:48:04.113 回答
0

不,最简单的解决方案是在 HTML 中使用内联 JS。


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

于 2012-06-10T08:09:02.140 回答