我有一个带有 ChoiceType 字段的 Symfony3 表单。它使用带有 AJAX 数据源的 Select2。这一点工作正常。然而,当表单被提交时,Symfony 验证开始并抱怨:
This value is not valid
Run Code Online (Sandbox Code Playgroud)
我想这是因为通过 AJAX 选择的选择不存在于表单类型的“选择”键中。
我对 Symfony 比较陌生。有人可以指出我正确的方向以禁用现场验证吗?
我有 Select2 V 4.02 的问题
这是我的代码
<select id="MySelect" class="form-control" runat="server" ClientIDMode="static">
<option></option>
<option value="1">A</option>
<option value="2">B</option>
<option value="3">C</option>
</select>
<asp:Button Text="Show Select2 Result" runat="server" ID="btnShow" OnClick="btnShow_Click"/>
Run Code Online (Sandbox Code Playgroud)
jQuery:
$('#MySelect').select2({
placeholder: "-Select-"
});
Run Code Online (Sandbox Code Playgroud)
我的问题是:我可以从后面的 ASP .Net 代码中获取“MySelect”选择值吗?我从asp .net webform后面的代码中尝试了这段代码
protected void btnShow_Click(object sender, EventArgs e)
{
Response.Write(MySelect.Value);
}
Run Code Online (Sandbox Code Playgroud)
但它返回空字符串。
使用带有 JSON/Ajax 调用的 Select2,我正在尝试创建这样的组:
<optgroup label="Property Reference">
<option value="1">5742</option>
<option value="2">5788</option>
<option value="3">5762</option>
<option value="4">5711</option>
</optgroup>
Run Code Online (Sandbox Code Playgroud)
我的问题的文档不可用。
我设法开始工作的格式:
{
results: [
{
id: 'CA',
text: 'California'
},
{
id: 'CO',
text: 'Colarado'
]
}
}
Run Code Online (Sandbox Code Playgroud)
但是这里没有组。
在这个问题之后,我尝试了以下格式:
{
"results": {
"text": "Mountain Time Zone",
"children": [
{
"id": "CA",
"text": "California"
},
{
"id": "CO",
"text": "Colorado"
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
和
{
"results": {
"Mountain Time Zone": [
{
"id": "CA",
"text": "California"
},
{ …Run Code Online (Sandbox Code Playgroud) 我使用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(下拉 jquery 框架)时,您可以使用 jquery 制作精美的下拉菜单。
如您所见,单选框有一个单独的搜索框,但多选框有内联的搜索框。
是否有可能向多选添加单独的搜索框?
$(".my-dropdown").select2();Run Code Online (Sandbox Code Playgroud)
.my-dropdown{
width: 50%;
clear: both;
}Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>
<select class="my-dropdown" multiple="multiple">
<option value="AL">Alabama</option>
<option value="WY">Wyoming</option>
</select>
<br /><br /><br />
<select class="my-dropdown">
<option value="AL">Alabama</option>
<option value="WY">Wyoming</option>
</select>Run Code Online (Sandbox Code Playgroud)
我现在正在使用select2下拉插件.我遇到的情况是我必须添加一个select2字段,该字段会自动填充我们应用中的现有邮件ID.我能够这样做,但我还必须添加新的邮件ID,它们不在同一领域的应用程序中.我无法解决这个问题.你能不能帮我解决这个问题......
这是我的视图页面代码.
<input type="hidden" class="select2 to_email w-100" name="to_email[]"
data-role="to_email" data-width="100%" data-placeholder="To" value="">
Run Code Online (Sandbox Code Playgroud)
Js代码:
$('body').on('click','[data-button="reply-mail"],[data-click="reply"]', function() {
attach = [];
var $ti = $(this).closest('[data-role="row-list"]').find('[data-role="reply-mail-wrap"]');
var $to_this = $ti.find('[data-role="to_email"]');
var mail_toadr = $ti.find('input[name="to_addr"]').val();
$($to_this).select2({
placeholder: "Search for a contact",
minimumInputLength: 3,
//maximumSelectionLength: 1,
multiple : true,
ajax: {
url: Utils.siteUrl()+'mailbox/get_all_contacts',
type: 'POST',
dataType: 'json',
quietMillis: 250,
data: function (term, page) {
return {
term: term, //search term
page_limit: 100 // page size
};
},
results: function (data, page) {
return { results: …Run Code Online (Sandbox Code Playgroud) 我正在使用精选2,它很棒.我有一个例子,用户通过ajax从下拉列表中选择(与链接中列出的远程数据示例完全相同),但我希望用户能够搜索以及能够键入新值t存在于后端.
我有这个工作在multiselect但尝试看看使用单个下拉选项时是否有相同的支持?
我正在尝试将Select2与Magento2集成。到目前为止,我已经成功集成了插件,但是控制台上显示错误。

我所做的:
app/design/frontend/<vendor>/<themename>/web/js/select2.min.jsapp/design/frontend/<vendor>/<themename>/Magento_Theme/layout/default_head_blocks.xml将此添加到脚本标签中的phtml文件中:
require(['jquery'],function(jquery){
jquery(document).load(function() {
jquery("#sorter2").select2();
});
});
我知道我应该通过requireJS包含它,但是我似乎无法使其工作。
我想在默认情况下将第一个位置设置为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中的下拉值,但它是隐藏的输入,并且值在查询中加载
我希望有人能帮助我
问候!
我正在使用Typescript开发Angular 2项目.我希望能够使用select2,我没有看到任何稳定的功能丰富的插件等同于select2.但是我遇到types/select2了DefinitelyTyped项目.我不确定如何在我的项目中使用它们.我也找不到其他DefinitelyTyped库的示例.我是TS和Angular 2的新手.有人能指出我应该如何使用它吗?
我知道我可以使用我的package.json包含库但不知道如何在组件中使用.