如果我理解正确,在v4.0.0之前正确使用matcher是:
$('#myselect').select2({
...
matcher: function(term, text) {
// return true if matches, false if not
}
})
Run Code Online (Sandbox Code Playgroud)
使用4.0.2这不起作用--AFAICT只有一个参数matcher,它是一个对象.我可以使用相同的函数签名并将其打包oldWrapper,但我想避免这种情况......我无法找到任何示例或文档.那么,我如何使用新的匹配器?或者至少,功能签名是什么?
我使用kartik - yii2-widget-select2允许选项在表单创建时选择多个选项.
我想根据select2小部件中选择的选项数量向数据库输入两行或更多行.
表单中的select2小部件如下所示.
<?= $form->field($model, 'Assign_task_to')->widget(Select2::classname(),
//$data = ArrayHelper::map(Employee::find()->all(),'Employee_ID','employee_name'),
[
'data' => ArrayHelper::map(Employee::find()->all(),'Employee_ID','employee_name'),
'language' => 'en',
'options' => ['placeholder' => 'Select an employee ...', 'multiple' => true],
'pluginOptions' => [
'allowClear' => true
],
]); ?>
Run Code Online (Sandbox Code Playgroud)
控制器actionCreate在下面.
public function actionCreate()
{
// set default values
$empModel = new Tasksemp();
$model = new Tasks();
$model->priotiy_level = 'medium';
$model->start_date = date('Y-m-d'); //to get default date
if ($model->load(Yii::$app->request->post())) {
//Check if field input is empty
$model->file = UploadedFile::getInstance($model, 'upload_documents');
if($model->file)
{ …Run Code Online (Sandbox Code Playgroud) 我想在默认情况下将第一个位置设置为select2下拉列表,我已经尝试了这个但它不起作用:
$('#mylist').val($('#mylist option:first-child').val()).trigger('change');
Run Code Online (Sandbox Code Playgroud)
我试过的其他方式;
$('#mylist').val(1);
Run Code Online (Sandbox Code Playgroud)
但问题是我不知道它是什么价值,因为它取决于查询,它并不总是相同的值.
我没有设置HTML中的下拉值,但它是隐藏的输入,并且值在查询中加载
我希望有人能帮助我
问候!
我正在使用 jQuery 插件Select2
如果我有一个具有以下结构的多选:
<select name="search-term[]" multiple="multiple">
<optgroup label="Categories">
<option value="category_4">Internal</option>
<option value="category_2">Business</option>
<option value="category_5">External</option>
<option value="category_1">Science</option>
<option value="category_6">Sports and Social</option>
</optgroup>
<optgroup label="Event Types">
<option value="eventtype_2">Meeting</option>
<option value="eventtype_3">Social Activity</option>
<option value="eventtype_4">Sporting Activity</option>
<option value="eventtype_1">Symposium</option>
</optgroup>
<optgroup label="Locations">
<option value="location_2">Office 1</option>
<option value="location_3">Office 2</option>
<option value="location_1">Office 3</option>
</optgroup>
</select>
Run Code Online (Sandbox Code Playgroud)
如果我在标记为 Locations 的 optgroup 下选择“Office 1”,则所选选项上的标签显示“Office 1”
有没有办法更改它,以便它也显示 optgroup 标签,以便选择选项上的标签会显示“位置:Office 1”。
请参阅下图以了解我所指的标签:
我想编辑选项文本和值选择。
<select id="sel">
<option value="Option one">Option one</option>
<option value="Option two">Option two</option>
<option value="Option three">Option three</option>
<option value="Option four">Option four</option>
</select>
$("#sel").select2({
width: 400,
tags: true
});
Run Code Online (Sandbox Code Playgroud)
假设我选择Option one,并且我想将其编辑为First Option,文本和值。我该怎么做?
之后它应该看起来像
<select id="sel">
<option value="First option">First option</option>
<option value="Option two">Option two</option>
<option value="Option three">Option three</option>
<option value="Option four">Option four</option>
</select>
Run Code Online (Sandbox Code Playgroud)
像这样的东西。之前是tEST之后tEDT EDIT,所有这些我都想用 select2 的输入来做
初始化隐藏时,我无法获得select2下拉列表以适合父容器(折叠).我知道这不是一个错误,因为select2无法计算父宽度.但我无法克服这一点.我需要100%给父母.
<div class="panel panel-default">
<div class="panel-body">
<div class="btn-toolbar">
<button class="btn btn-default" data-toggle="collapse" data-target="#collapse-select2" aria-expanded="false">Toggle</button>
</div>
<div class="collapse" id="collapse-select2">
<select class="form-control" data-role="select2">
<option value="1">Option #1</option>
<option value="2">Option #2</option>
<option value="3">Option #3</option>
</select>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
小提琴:这里
有人可以帮忙吗?
我使用此代码将数据插入到select带select2插件的元素:
$.ajax({
type: "POST",
url: "ws.asmx/GetEvrakGrup",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (dc, status) {
jsonData = JSON.parse(dc.d);
$("#selectId").select2({
data: jsonData
});
},
error: function () { alert("This is an Error");}
});
Run Code Online (Sandbox Code Playgroud)
我想在此选择中设置一个值,但它不起作用:
$("#selectId").val(81);
Run Code Online (Sandbox Code Playgroud) <%= form_for home_path, class: 'home', role: 'search', method: :get do |f| %>
<div class="form-group" style="display:inline;">
<div class="input-group input-group-md">
<%= text_field_tag :q, params[:q], placeholder: ... ,class: 'form-control hideOverflow', type: "search" %>
<%= select_tag "category", options_from_collection_for_select(...),include_blank: true, class: 'form-control hideOverflow', type: "search" %>
<%if logged_in? %>
<%= select_tag "location", options_for_select([...], ...),class: 'form-control hideOverflow', type: "search" %>
<% else %>
<%= select_tag "location", options_for_select([...], ...),class: 'form-control hideOverflow', include_blank: true, type: "search" %>
<% end %>
<span class="input-group-addon"><%= submit_tag "Search", class: "btn-transparent"%></span>
</div> …Run Code Online (Sandbox Code Playgroud) 我使用 RequireJS 来导入 javascript 库。我想更改 select2 的默认语言作为文档中的指南,但没有运气。
define(['jquery', 'select2'], function($) {
$(".select2").select2({
language: 'es'
});
});
Run Code Online (Sandbox Code Playgroud)
define() 中的“select2”指向select2/dist/js/select2.full.js在 select2 4.0.0 包中。
我是否必须手动加载语言环境文件select2/dist/js/i18n/es.js或执行其他操作?
另外,我想更改所有 select2 实例的默认语言设置,这样我就不需要在那里传递语言值。
谢谢。
我使用以下HTML代码在我的表单中包含一个select2控件,如下所示.
<select id="element_id" class="select2" style="width:100%">
<option value="e1" >Element 1</option>
<option value="e2" >Element 2</option>
<option value="e3" >Element 3</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我使用以下样式来格式化列表项和所选项的字体.
<style>
#s2id_element_id .select2-container--default .select2-selection--single .select2-selection__rendered
{
color: green ;
}
</style>
Run Code Online (Sandbox Code Playgroud)
这不会将列表项和所选项目以绿色着色.注意:我只需要这个特定的选择框来拥有样式而不是其他.所以我使用css id选择器进行特定的select2控制.
谢谢.