要获取我正在使用的select2
的所选值:
var x = $("#select").select2('data');
var select_choice = x.text
问题是,如果没有选择值,则抛出错误,我想知道是否有任何方法使其在没有选择选项的情况下返回占位符
答案 0 :(得分:86)
您必须添加一个空选项(即<option></option>
)作为查看占位符的第一个元素。
来自Select2官方文档:
&#34;请注意,由于浏览器假定在非多值选择框中选择了第一个选项元素,因此必须为占位符提供空的第一个选项元素(<option></option>
)。 &#34;
希望这有帮助。
示例:
<select id="countries">
<option></option>
<option value="1">Germany</option>
<option value="2">France</option>
<option value="3">Spain</option>
</select>
并且Javascript将是:
$('#countries').select2({
placeholder: "Please select a country"
});
答案 1 :(得分:34)
将它放在您的脚本文件中:
$('select').select2({
minimumResultsForSearch: -1,
placeholder: function(){
$(this).data('placeholder');
}
});
然后在HTML中添加以下代码:
<select data-placeholder="Your Placeholder" multiple>
<option></option> <------ this is where your placeholder data will appear
<option>Value 1</option>
<option>Value 2</option>
<option>Value 3</option>
<option>Value 4</option>
<option>Value 5</option>
</select>
答案 2 :(得分:14)
$("#e2").select2({
placeholder: "Select a State",
allowClear: true
});
$("#e2_2").select2({
placeholder: "Select a State"
});
占位符可以通过附加到select的data-placeholder属性声明,也可以通过占位符配置元素声明,如示例代码所示。
当占位符用于非多值选择框时,它要求您包含空标记作为第一个选项。
可选择使用清除按钮(选择后可见)可将选择框重置回占位符值。
答案 3 :(得分:10)
$('#ddlSelect').prepend('<option selected=""></option>').select2({placeholder: "Select Month"});
答案 4 :(得分:3)
这对我有用:
$('#SelectListId').prepend('<option selected></option>').select2({
placeholder: "Select Month",
allowClear: true
});
希望这有帮助:)
答案 5 :(得分:2)
在html上使用空占位符,如:
<select class="select2" placeholder = "">
<option value="1">red</option>
<option value="2">blue</option>
</select>
并在您的脚本中使用:
$(".select2").select2({
placeholder: "Select a color",
allowClear: true
});
答案 6 :(得分:1)
我做了以下事情:
var defaultOption = new Option();
defaultOption.selected = true;
$(".js-select2").append(defaultOption);
对于我使用的其他选项:
var realOption = new Option("Option Value", "id");
realOption.selected = false;
$(".js-select2").append(realOption);
答案 7 :(得分:0)
试试这个。在html中你写下面的代码。
var="example=value" && echo "$var" | sed "s/^example=\(.*\)$/\1/"
在你的脚本中写下面的代码。请记住,它有select2js的链接。
var=$(echo "example=value" | sed "s/^example=\(.*\)$/\1/")
答案 8 :(得分:0)
最简单方式添加空&#34;选项&#34;毕竟。
<option></option>
示例:
<select class="select2" lang="ru" tabindex="-1">
<option></option>
<option value="AK">Alaska</option>
<option value="HI">Hawaii</option>
</select>
如果需要,还可以使用js代码:
$(document).ready(function() {
$(".select2").select2({
placeholder: "Select a state",
allowClear: true
});
});
}
答案 9 :(得分:0)
您可以在两个级别中选择html代码来初始化占位符,例如:
<select class="form-control select2" style="width: 100%;" data-placeholder="Select a State">
<option></option>
<option>تهران</option>
<option>مشهد</option>
<option>اصفهان</option>
<option>شیراز</option>
<option>اهواز</option>
<option>تبریز</option>
<option>کرج</option>
</select>
选择标签中的1.set data-placeholder属性 2.在您选择的标签的第一个中设置空标签
答案 10 :(得分:0)
在select2
的当前版本中,您只需要添加属性data-placeholder="A NICE PLACEHOLDER"
。 select2
将自动分配占位符。
请注意:仍然必须在选择中添加一个空的<option></option>
。
答案 11 :(得分:0)
我尝试了所有这些,最后,只使用了适用于我的系统的 title="text here"
。注意没有空白选项
<select name="Restrictions" class="selectpicker show-tick form-control"
data-live-search="true" multiple="multiple" title="Choose Multiple">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
答案 12 :(得分:-1)
只需将此类添加到您的 .css 文件中即可。
.select2-search__field{width:100% !important;}
答案 13 :(得分:-2)
$selectElement.select2({
minimumResultsForSearch: -1,
placeholder: 'SelectRelatives'}).on('select2-opening', function() { $(this).closest('li').find('input').attr('placeholder','Select Relative');
});