Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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
Javascript 自定义剑道下拉列表消息,以替换;“未找到任何数据”;_Javascript_Kendo Ui_Kendo Asp.net Mvc - Fatal编程技术网

Javascript 自定义剑道下拉列表消息,以替换;“未找到任何数据”;

Javascript 自定义剑道下拉列表消息,以替换;“未找到任何数据”;,javascript,kendo-ui,kendo-asp.net-mvc,Javascript,Kendo Ui,Kendo Asp.net Mvc,在我们的.NET Core 3 web应用程序中,我们将剑道与razor视图一起使用 我们使用的是Html.Kendo().DropDownListFor控件,当它没有数据显示时,会显示以下文本: “找不到数据” 我们想用自定义消息替换此字符串。我们知道我们可以替换kendo.all.min.js中的字符串,但是我们知道一旦我们更新kendo,这个字符串就会被覆盖 如何在DropDownListFor控件本身中以编程方式指定文本字符串?我建议您为您的项目创建一个JS文件,并覆盖您想要的任何消息,

在我们的.NET Core 3 web应用程序中,我们将剑道与razor视图一起使用

我们使用的是
Html.Kendo().DropDownListFor
控件,当它没有数据显示时,会显示以下文本:

“找不到数据”

我们想用自定义消息替换此字符串。我们知道我们可以替换
kendo.all.min.js
中的字符串,但是我们知道一旦我们更新kendo,这个字符串就会被覆盖


如何在
DropDownListFor
控件本身中以编程方式指定文本字符串?

我建议您为您的项目创建一个JS文件,并覆盖您想要的任何消息,这样您就可以毫无问题地更新kendo

现在,为了回答您的问题,在
DropDownList
的情况下,您可以像这样更改以下属性的值:

kendo.ui.DropDownList.prototype.options.messages.noData = 'Sorry, no data here';

你可以用任何其他小部件来实现这一点。

我建议你为你的项目创建一个JS文件,并覆盖你想要的任何消息,这样你就可以毫无问题地更新剑道了

现在,为了回答您的问题,在
DropDownList
的情况下,您可以像这样更改以下属性的值:

kendo.ui.DropDownList.prototype.options.messages.noData = 'Sorry, no data here';

您可以使用任何其他小部件执行此操作。

您可以设置并分配模板以使用和自定义无数据消息。我还添加了带有样式的跨距,以删除剑道添加的大写文本转换。像这样:

<!-- Template -->
<script id="noDataTemplate" type="text/x-kendo-template">
    <span style="text-transform: none;">
        <strong>My Custom No Data Message here</strong>
    </span>
</script>

<!-- DropDownList initialization -->
@(Html.Kendo().DropDownList()
            .Name("customers")
            .DataTextField("ContactName")
            .DataValueField("CustomerID")
            .NoDataTemplateId("noDataTemplate") // Reference to the template.
            .DataSource(source =>
            {
                source.Read(read =>
                {
                    read.Action("Template_GetCustomers", "ComboBox");
                });
            })
)

此处我的自定义无数据消息
@(Html.Kendo().DropDownList())
.名称(“客户”)
.DataTextField(“联系人姓名”)
.DataValueField(“CustomerID”)
.NoDataTemplateId(“noDataTemplate”)//对模板的引用。
.DataSource(source=>
{
source.Read(Read=>
{
read.Action(“模板”、“组合框”);
});
})
)

此处的详细信息:

您可以设置和分配模板,以使用和自定义无数据消息。我还添加了带有样式的跨距,以删除剑道添加的大写文本转换。像这样:

<!-- Template -->
<script id="noDataTemplate" type="text/x-kendo-template">
    <span style="text-transform: none;">
        <strong>My Custom No Data Message here</strong>
    </span>
</script>

<!-- DropDownList initialization -->
@(Html.Kendo().DropDownList()
            .Name("customers")
            .DataTextField("ContactName")
            .DataValueField("CustomerID")
            .NoDataTemplateId("noDataTemplate") // Reference to the template.
            .DataSource(source =>
            {
                source.Read(read =>
                {
                    read.Action("Template_GetCustomers", "ComboBox");
                });
            })
)

此处我的自定义无数据消息
@(Html.Kendo().DropDownList())
.名称(“客户”)
.DataTextField(“联系人姓名”)
.DataValueField(“CustomerID”)
.NoDataTemplateId(“noDataTemplate”)//对模板的引用。
.DataSource(source=>
{
source.Read(Read=>
{
read.Action(“模板”、“组合框”);
});
})
)

此处的更多信息:

感谢您的回答@G\p。这几乎满足了我们的要求,但文本“我的自定义无数据消息”始终以大写形式呈现。我们如何才能完全按照模板中指定的方式显示它?剑道控件似乎正在向文本的大写部分添加文本转换样式。如果将以下样式添加到自定义文本周围的跨距中,是否会阻止它?文本转换:无@Artileech现在我回到电脑前,看起来剑道添加了.k-nodata类,其中包含文本转换:大写,按照我上面所说的添加文本转换:没有样式适合您现在很完美,谢谢@G_P!您是否希望更新您的答案,以包含正确的跨度,以便其他人看到此帖子?我的自定义无数据消息在此很高兴它为您解决了问题-我更新了答案,为您的答案@G_P添加了带有样式覆盖的跨距。这几乎满足了我们的要求,但文本“我的自定义无数据消息”始终以大写形式呈现。我们如何才能完全按照模板中指定的方式显示它?剑道控件似乎正在向文本的大写部分添加文本转换样式。如果将以下样式添加到自定义文本周围的跨距中,是否会阻止它?文本转换:无@Artileech现在我回到电脑前,看起来剑道添加了.k-nodata类,其中包含文本转换:大写,按照我上面所说的添加文本转换:没有样式适合您现在很完美,谢谢@G_P!您是否希望更新您的答案,以包含正确的跨度,以便其他人看到此帖子?我的自定义“无数据”消息很高兴它为您解决了问题-我更新了答案,为您的答案添加了带有样式覆盖的跨距,这可能在其他场景中对我们有所帮助。但是在这个场景中,我们想在视图本身中为特定的DropDownListFor控件添加属性。感谢您的回答,这在其他场景中可能会对我们有所帮助。但是在这个场景中,我们希望在视图本身中为特定的DropDownListFor控件添加属性。