【问题标题】:Is it possible to set kendo UI configurations in a loop?是否可以循环设置剑道 UI 配置?
【发布时间】:2019-12-20 14:20:32
【问题描述】:

这是我面临的情况的一个例子:

我有一堆像这样添加的 kendoNumericTextBoxes

<input type="number" id="test1" class="kendoText" data-role="numerictextbox" data-bind="<databind>" />    
<input type="number" id="test2" class="kendoText" data-role="numerictextbox" data-bind="<databind>" />   
<input type="number" id="test3" class="kendoText" data-role="numerictextbox" data-bind="<databind>" />

然后是一个在$(document).ready 上触发的脚本来设置每个配置,例如

$("#test1").kendoNumericTextBox({
     format: "c0",
     spinners: false,
     max: 1000000000,
     min: 0
});

由于我将其中许多配置设置为完全相同的值,因此我的直接想法是通过循环自动执行此操作

var tags = ["#test1", "#test2", "#test3"];

tags.forEach(tag => 
    $(tag).kendoNumericTextBox({
        format: "c0",
        spinners: false,
        max: 1000000000,
        min: 0
    });
);

但这似乎不起作用,我似乎找不到它不起作用的原因。关于可能导致它的原因以及如何解决它的任何想法?

【问题讨论】:

  • 如果您能提供一个指向 sn-p 的链接,将会非常有帮助。

标签: jquery html kendo-ui


【解决方案1】:

尝试以下操作:

$( document ).ready(function() {
    var kendoInputs = $( '.kendoText' );
    kendoInputs.kendoNumericTextBox({
        format: 'c0',
        spinners: false,
        max: 1000000000,
        min: 0
    });
});

您可以使用class 属性来定位具有class 的所有元素,而不是为数组中的每个输入声明id

另外,您的 html 示例中有重复的 id's,这也可能是问题所在。

【讨论】:

  • 谢谢,这行得通。我不得不将其调整为var kendoInputs = $('[data-role="numerictextbox"]'),并且效果很好。我认为使用该类会导致一些显示问题,因为它会生成具有相同类名的子元素
  • 很高兴能帮上忙 :)
猜你喜欢
  • 1970-01-01
  • 2019-02-10
  • 1970-01-01
  • 1970-01-01
  • 2013-05-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多