select2 在另一个选择时不删除默认 0 值
select2 not removing default 0 value when another selection
当我select值在select2多个selection中时,列表中仍然有默认的0值。
任何想法如何删除它?
div class="row mg-t-20">
@Html.LabelFor(m => m.ActivityThatIsAssigned, new { @class = "col-sm-4 form-control-label" })
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
@Html.DropDownListFor(m => m.ActivityThatIsAassignedId, Model.ActivityThatIsAssigned, new { @class = "dropdown js-ActivityThatIsNotAssigned-dropdown", @multiple = "multiple", @style = "width: 100%;" })
@Html.HiddenFor(m => m.ActivityThatIsAassignedId)
</div>
</div>
模型项目
[Display(Name = "Activity that is assigned")]
public IEnumerable<SelectListItem> ActivityThatIsAssigned { get; set; }
初始化select2
$(".dropdown").select2({ width: '100%' });
$(".js-selectlinkedinprofile, .js-selectbatch, .js-selecttag, .js-selectfanactivity, .js-selectfandeliveryaction, .js-ConnectedToOtherProfiles").prepend('<option value="0"></option>');
$(".dropdown.js-selectfandeliveryaction, .dropdown.js-selectlinkedinprofile, .dropdown.js-selectbatch, .dropdown.js-selecttag, .dropdown.js-selectfanactivity, .dropdown.js-selectfandeliveryaction, .dropdown.js-ActivityThatIsAssigned-dropdown, .dropdown.js-ActivityThatIsNotAssigned-dropdown, .dropdown.js-ConnectedToOtherProfiles" ).select2();
$(".js-selectlinkedinprofile, .js-selectbatch, .js-selecttag, .js-selectfandeliveryaction,.js-ConnectedToOtherProfiles").val("0").trigger("change.select2");
我认为你可以在服务器端(控制器)自行删除它。
循环 ActivityThatIsAssignedId 列表,如果等于零则将其从列表中删除。
您必须删除 html 中的隐藏输入。删除此行:
@Html.HiddenFor(m => m.ActivityThatIsAassignedId)
还有:
- 确保默认
SelectListItem
值设置为 ""
或
null
在你的 Model.ActivityThatIsAssigned
collection.
- 确保
ActivityThatIsAassignedId
可以为空。 (例如 int?
)
当我select值在select2多个selection中时,列表中仍然有默认的0值。 任何想法如何删除它?
div class="row mg-t-20">
@Html.LabelFor(m => m.ActivityThatIsAssigned, new { @class = "col-sm-4 form-control-label" })
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
@Html.DropDownListFor(m => m.ActivityThatIsAassignedId, Model.ActivityThatIsAssigned, new { @class = "dropdown js-ActivityThatIsNotAssigned-dropdown", @multiple = "multiple", @style = "width: 100%;" })
@Html.HiddenFor(m => m.ActivityThatIsAassignedId)
</div>
</div>
模型项目
[Display(Name = "Activity that is assigned")]
public IEnumerable<SelectListItem> ActivityThatIsAssigned { get; set; }
初始化select2
$(".dropdown").select2({ width: '100%' });
$(".js-selectlinkedinprofile, .js-selectbatch, .js-selecttag, .js-selectfanactivity, .js-selectfandeliveryaction, .js-ConnectedToOtherProfiles").prepend('<option value="0"></option>');
$(".dropdown.js-selectfandeliveryaction, .dropdown.js-selectlinkedinprofile, .dropdown.js-selectbatch, .dropdown.js-selecttag, .dropdown.js-selectfanactivity, .dropdown.js-selectfandeliveryaction, .dropdown.js-ActivityThatIsAssigned-dropdown, .dropdown.js-ActivityThatIsNotAssigned-dropdown, .dropdown.js-ConnectedToOtherProfiles" ).select2();
$(".js-selectlinkedinprofile, .js-selectbatch, .js-selecttag, .js-selectfandeliveryaction,.js-ConnectedToOtherProfiles").val("0").trigger("change.select2");
我认为你可以在服务器端(控制器)自行删除它。
循环 ActivityThatIsAssignedId 列表,如果等于零则将其从列表中删除。
您必须删除 html 中的隐藏输入。删除此行:
@Html.HiddenFor(m => m.ActivityThatIsAassignedId)
还有:
- 确保默认
SelectListItem
值设置为""
或null
在你的Model.ActivityThatIsAssigned
collection. - 确保
ActivityThatIsAassignedId
可以为空。 (例如int?
)