Javascript Select2(多选)-如果至少选择了一个元素,如何显示替代占位符?
我有一个这样的例子:Javascript Select2(多选)-如果至少选择了一个元素,如何显示替代占位符?,javascript,jquery,placeholder,jquery-select2,Javascript,Jquery,Placeholder,Jquery Select2,我有一个这样的例子: <select multiple="true" placeholder='Select something' allowClear: false data-bind=" options: states, optionsValue: 'id', optionsText: 'text', selectedOptions: selectMultipleStates,
<select
multiple="true"
placeholder='Select something'
allowClear: false
data-bind="
options: states,
optionsValue: 'id',
optionsText: 'text',
selectedOptions: selectMultipleStates,
select2: {}"
style="width: 500px"
</select>
<!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>
我能想到的唯一方法是在html中有两个select标记,并在加载页面时隐藏第二个select标记,然后在第一个select标记上添加一个onchange属性,并运行一个函数来显示第二个select标记,其中第一个选择是select more。它会给你这样的东西:
<select
multiple="true"
placeholder='Select something'
allowClear: false
data-bind="
options: states,
optionsValue: 'id',
optionsText: 'text',
selectedOptions: selectMultipleStates,
select2: {}"
style="width: 500px"
</select>
<!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>
window.onload=function(){
document.getElementById('mysecondselecttag').style.display=“无”;
};
函数ShowOtherTag()
{
document.getElementById('mysecondselecttag').style.display=“block”;
}
挑选
选择1
选择2
选择3
选择更多
选择1
选择2
选择3
我能想到的唯一方法是在html中有两个select标记,并在加载页面时隐藏第二个select标记,然后在第一个select标记上添加一个onchange属性,并运行一个函数来显示第二个select标记,其中第一个选择是select more。它会给你这样的东西:
<select
multiple="true"
placeholder='Select something'
allowClear: false
data-bind="
options: states,
optionsValue: 'id',
optionsText: 'text',
selectedOptions: selectMultipleStates,
select2: {}"
style="width: 500px"
</select>
<!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>
window.onload=function(){
document.getElementById('mysecondselecttag').style.display=“无”;
};
函数ShowOtherTag()
{
document.getElementById('mysecondselecttag').style.display=“block”;
}
挑选
选择1
选择2
选择3
选择更多
选择1
选择2
选择3
我认为这行不通;到目前为止,如果已经有一个选择,我无法让select2显示占位符…我给你看的代码做了一些你需要的事情,至少我认为,除非我还不明白你需要做什么。我给你看的代码做了一些你需要的事情-抱歉,但它没有。例如,如果从第二次选择中选择了任何项目,则第二次选择不会显示“选择更多”,我认为这不会起作用;到目前为止,如果已经有一个选择,我无法让select2显示占位符…我给你看的代码做了一些你需要的事情,至少我认为,除非我还不明白你需要做什么。我给你看的代码做了一些你需要的事情-抱歉,但它没有。例如,如果已从第二次选择中选择了任何项目,则第二次选择将不会显示“选择更多”