链接环境中的下拉列表不起作用

时间:2015-02-05 19:33:49

标签: html css html5 google-chrome href

我正在尝试在链接环境中放置一个下拉选择菜单: (另外我从HTML5开始读到,可以在div周围放置“a”环境。有什么想法吗?)

            <a href="">
                <div id="foo">
                    <select>
                        <option value="a">Stuff</option>
                        <option value="b">More stuff</option>
                    </select>
                </div>
            </a>

无论如何,至少在Chrome中这不能正常工作:如果我打开菜单,点击链接环境并刷新页面。在IE中,这确实可以正常工作。我尝试过z-index,但这不适用于Chrome。

提前致谢,

伦纳特

1 个答案:

答案 0 :(得分:1)

两种方法都非常简单。

  1. 取走href=""元素的<a>部分。这就是发送回发请求和刷新页面的内容。
  2. 如果您想以任何理由保留链接。使click事件返回false。将其添加到<a>代码:onclick="return false;"
  3. 像这样:

    &#13;
    &#13;
    <a href="" onclick="return false;">
      <div id="foo">
        <select>
          <option value="a">Stuff</option>
          <option value="b">More stuff</option>
        </select>
      </div>
    </a>
    &#13;
    &#13;
    &#13;

    如果要自动化第二种方法,可以添加一些javascript:

    &#13;
    &#13;
    var dropdownlink = document.getElementsByTagName("a");
    
    for (var i = 0; i < dropdownlink.length; i++) {
      if (dropdownlink[i].getElementsByTagName("select").length > 0) {
        dropdownlink[i].onclick = function() {
          return false;
        };
      }
    }
    &#13;
    <a href="k">
      <div id="foo">
        <select>
          <option value="a">Stuff</option>
          <option value="b">More stuff</option>
        </select>
      </div>
    </a>
    
    <a href="">Test Link</a>
    &#13;
    &#13;
    &#13;