1

我有select2 示例,如下所示:

<select 
    multiple="true"
    placeholder='Select something'
    allowClear: false
    data-bind="
        options: states, 
        optionsValue: 'id', 
        optionsText: 'text', 
        selectedOptions: selectMultipleStates, 
        select2: {}"
    style="width: 500px"
</select>

我想要两个占位符:

  • 根本没有选择时显示的通常的(选择某物)
  • 如果已经选择了至少一个元素,将显示另一个(选择更多)
4

1 回答 1

1

我能想到的唯一方法是在你的 html 中有两个选择标签,并在页面加载时隐藏第二个标签,然后在第一个标签上添加一个 onchange 属性并运行一个显示第二个选择的函数选择更多是首选标签。它会给你这样的东西:

<!doctype HTML>
<HTML>
<HEAD>
  <SCRIPT>
  window.onload=function(){
             document.getElementById('mysecondselecttag').style.display = "none";
                         };
  function ShowOtherTag()
   {
    document.getElementById('mysecondselecttag').style.display = "block";
   }
  </SCRIPT>
</HEAD>
<BODY>
 <select id="myfirstselectag" onchange="ShowOtherTag()">
  <option value="0">Select something</option>   
  <option value="1">Choice 1</option>
  <option value="2">Choice 2</option>
  <option value="3">Choice 3</option>     
 </select>
 <select id="mysecondselecttag">
  <option value="0">Select more</option>    
  <option value="1">Choice 1</option>
  <option value="2">Choice 2</option>
  <option value="3">Choice 3</option>     
 </select>
</BODY>
</HTML>
于 2013-10-18T20:41:12.457 回答