繁体   English   中英

如何在JavaScript中获取动态的Timepicker值

[英]How can I get dynamic Timepicker values in javascript

因此,我在使用Kendo UI MVC来创建一种请求类型。 但是,用户控件的数量是动态的,并且取决于用户想要发出的该类型的请求数量。 因此,要创建它们,我需要这样做:

@while(number!=numberAdds){
<br />
    <label style="margin-right:1em;margin-top:1.5em">Start time:</label>
    @(Html.Kendo().TimePicker()
          .Name("startTime"+(number+1))
          .Min("8:00")
          .Max("19:50")
          .Interval(10)
)

    <label style="margin-left:2.5em; margin-right:1em">End time:</label>
    @(Html.Kendo().TimePicker()
          .Name("endTime"+(number+1))
          .Min("8:10")
          .Max("20:00")
          .Interval(10))

      number++;}

而且有效。 现在,当我单击“提交”按钮时,我想要做的是创建一个StartTimes和EndTimes数组,以便可以通过Ajax Post将其发送到控制器。 但是,由于TimePickers ID,我无法执行此操作。 我正在尝试做这样的事情:

   $(document).on("click", "#confirm-request", function (e) {
        var date = $("#date").data("kendoDatePicker").value();
        var stringDate = kendo.toString(date, "yyyy-MM-dd");
        var number = 0;
        var numberAdds = parseInt(document.getElementById("number-adds").textContent);
        var timeStartStrings = new Array();
        var timeEndStrings = new Array();

        for (number; number < numberAdds; i++) {
            var startTime = $("#startTime"+number).data("kendoTimePicker");
            var endTime = $("#endTime"+number).data("kendoTimePicker");
            var timeStartString = kendo.toString(startTime.value(), 'yyyy-MM-dd hh:mm');
            var timeEndString = kendo.toString(endTime.value(), 'yyyy-MM-dd hh:mm');
            timeStartStrings[number] = timeStartString;
            timeEndStrings[number] = timeEndString;
        }

但是我无法获取StartTime和EndTime的值,我总是无法定义,并且我知道这是因为$(“#startTime” + number).data(“ kendoTimePicker”);

我能做什么? 谢谢 :)

剃刀代码(顶部代码块)中的number变量是否最初以-1开始(因为.Name("startTime"+(number+1)) ?否则,您的javascript代码将在其第一次迭代中尝试查找$("#startTime0")不存在,这可能会导致错误,从而停止执行JS函数。

因此,请检查DOM中存在的名称与Javascript询问的名称,并确保它们正确对齐。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM