Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
所选jQuery在填充时不显示数据占位符_Jquery_Asp.net Mvc_Jquery Chosen - Fatal编程技术网

所选jQuery在填充时不显示数据占位符

所选jQuery在填充时不显示数据占位符,jquery,asp.net-mvc,jquery-chosen,Jquery,Asp.net Mvc,Jquery Chosen,我正在ASP.NETMVC应用程序中使用jQuery选择的插件。当dropdownlist中包含项目时,数据占位符属性不起作用。它不会显示默认文本,而是自动选择列表中的第一项 这就是我定义dropdownlist的方式 @Html.DropDownListFor(m => m.Keep, Model.Data, new { @class = "chzn-select", data_placeholder = "Default..." }) 如果Model.Data为空(在视图

我正在ASP.NETMVC应用程序中使用jQuery选择的插件。当dropdownlist中包含项目时,
数据占位符
属性不起作用。它不会显示默认文本,而是自动选择列表中的第一项

这就是我定义dropdownlist的方式

@Html.DropDownListFor(m => m.Keep, Model.Data, 
     new { @class = "chzn-select", data_placeholder = "Default..." })
如果Model.Data为空(在视图模型中使用EF填充),则显示默认文本。否则,将选择第一个项目。我总是希望dropdownlist显示默认值

我通过
$('.chzn-select').selected()应用插件没什么特别的


有什么想法吗?提前感谢。

您需要先添加一个空选项

根据文件——

注意:在单次选择时,假定第一个图元由浏览器选择。要利用默认的文本支持,您需要在选择列表的第一个元素中包含一个空白选项

也许可以使用jQuery来添加它

$(".chzn-select").prepend("<option></option>");
$(“.chzn-select”).prepend(“”);

因为默认值将替换为列表中的值。因此,要显示默认值,请将该默认值作为第一项添加到列表中。

检查列表中的第一个元素和模型是否存在记录绑定

@Html.DropDownListFor(model => model.categoryModel.Id, ViewBag.CategoryList as SelectList, "", new { @class = "chzn_a", data_placeholder = "Choose Category.." })
如果下面的代码对您不起作用,请在选择列表后添加“”

$(".chzn_a").prepend("<option></option>");
$(“.chzn_a”)。前缀(“”);
默认文本支持

Selected通过读取select元素的数据占位符值自动设置默认字段文本(“选择国家…”)。如果不存在数据占位符值,它将默认为“选择一个选项”或“选择一些选项”,具体取决于选择是单个还是多个。您可以在插件js文件中根据需要更改这些元素

注意:在单次选择时,假定第一个元素由浏览器选择。要利用默认文本支持,您需要在选择列表的第一个元素中包含一个空白选项。
请参阅:

如果您的代码即使添加了空白的
选项
,也不起作用;然后您应该知道,有时浏览器需要新页面来加载代码并生效


因此,请关闭选项卡,打开新选项卡,转到项目页面查看更改

我也有同样的问题,我做了以下几点:

在初始化所选字段时,不能在宽度大小上使用%

$(".chosen").chosen({
'no_results_text' :'Oops, nothing found!',
'width'           :'700px',
'search_contains' : true,
'placeholder_text_multiple':'Please choose something ...',
'display_selected_options':false             

}))

这可能更适合作为注释而不是答案。如果您使用ASP.Net,您应该首先使用类似剃刀的@SametGunaydin-answered来完成所有操作,而不是在jQuery中执行额外的步骤