jquery - 无法提供固定位置以在下拉列表中添加新选项

标签 jquery html css jquery-ui semantic-ui

我正在使用带有以下代码的语义 ui 下拉列表

$('.ui.dropdown')
  .dropdown()
;
<html>
  <head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js"></script>
  </head>
  <body>

    <select class="ui dropdown">
      <option value="">Select option</option>
      <option value="1">Option 1</option>
      <option value="2">Option 2</option>
      <option value="3">Option 3</option>
      <option value="4">Option 4</option>
      <option value="5">Option 5</option>
      <option value="6">Option 6</option>
      <option value="new">+Add new</option>
    </select>

</body>
</html>

我无法为最后一个选项提供固定位置。我希望最后一个选项“+添加更多”具有固定位置,并且不应与其他选项一起滚动。我希望添加新选项就像它在 this image 中一样

最佳答案

您可以使用 css 属性 sticky 像这样定义它:

$('#sticky').bind('click', function(event) {
  //do what you want
  var x = document.getElementById("industries_served");
  var option = document.createElement("option");
  option.text = prompt("Please enter a new value", "Florida");
  x.add(option);
});
* {
  font-size: 16px;
}

#sticky {
  position: -webkit-sticky;
  /* Safari */
  position: sticky;
  bottom: 0;
  border-top: .5px solid;
  color: blue;
}

select {
  border: none;
}

#wrapper {
  border: 1px solid;
  width: fit-content;
  margin: auto;
  /* just here to center the div*/
}

.dropbtn {
  background-color: #4CAF50;
  color: white;
  padding: 16px;
  border: none;
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  z-index: 1;
}

#industries_served option:hover {
  background-color: #ddd;
}

#sticky:hover {
  background-color: #ddd;
}

.dropdown:hover .dropdown-content {
  display: block;
}

.dropdown:hover .dropbtn {
  background-color: #3e8e41;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="dropdown">
  <button class="dropbtn">Dropdown</button>
  <div class="dropdown-content">
    <div id="wrapper">
      <select class="ui fluid search dropdown" id="industries_served" name="industries_served" multiple="">
        <option value="">State</option>
        <option value="AL">Alabama</option>
        <option value="AK">Alaska</option>
        <option value="AZ">Arizona</option>
        <option value="AR">Arkansas</option>
        <option value="AR">New Mexico</option>
        <option value="AR">New York</option>
        <option value="AR">???</option>
      </select>
      <div id="sticky">+ Add more</div>
    </div>
  </div>
</div>

关于jquery - 无法提供固定位置以在下拉列表中添加新选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53756433/

相关文章:

javascript - jQuery - 使用发布数据重定向

html - 显示 2 个文本字段之间的空间

html - CSS+HTML 和 IE10

Javascript:将输入音频形成为音频下载链接?

html - Bootstrap 4 scrollspy 不工作的 css 选择器问题

javascript - &lt;textarea&gt; 滚动高度在主体负载上为零

HTML/CSS 元素不适合/按需要对齐页面

javascript - 设置与元素高度不同的滚动条高度

javascript - 使用隐藏输入来 POST JavaScript 函数结果

javascript - jQuery .css ("margin-top",值)在 IE 8(标准模式)中不更新