【问题标题】:undefined/undefined with JS Values带有 JS 值的未定义/未定义
【发布时间】:2016-10-23 13:07:08
【问题描述】:

我有以下 jsfiddle:https://jsfiddle.net/tzer0syu/2/

这很好用,但是当与我的主要表单和引导程序的日期插件一起使用时,日期和时间字段不会在更改时更新。函数和字段的命名与小提琴中的完全相同,并且控制台中没有错误。关于我可以做些什么来强制检查 onchange 的任何想法?有没有更好的方法来检查并忽略存在的空白?

代码如下:

<input type="text" id="incidentDateTime" name="incidentDateTime" value="06/22/2016 1:30 PM" />
<input type="text" id="incidentDate" value="" />
<input type="text" id="incidentTime" value="" />

$(function () {
          function time1() {
            var dateTimeSplit = $('#incidentDateTime').val().split(' ');

            var dateSplit = dateTimeSplit[0].split('/');
            var currentDate = dateSplit[0] + '/' + dateSplit[1] + '/' + dateSplit[2];
            //currentDate is 18/10/2010

            $('#incidentDate').val(currentDate);

            var currentTime = dateTimeSplit[1] + ' ' + dateTimeSplit[2];
            //currentTime is 10:06 PM

            $('#incidentTime').val(currentTime);
    if (isNaN(incidentDateTime)) {
                     $("#incidentDate").val();
                } else {
                     $("#incidentDate").val(CurrentDate);
                }
            }
            $("#incidentDateTime").change(time1);
                 time1();
          });

【问题讨论】:

  • 我不确定你在问什么。 JSFiddle 中的代码是否存在问题,或者仅当您将其与 Bootstrap 或其他上下文一起使用时才会看到问题?您是否包含足够的代码来显示实际问题?
  • 我在引导程序中使用隐藏字段,如果我在调用该函数的页面加载时给出值,这些字段将更新。但是,当字段更改时,字段不会更新日期和时间。有没有办法用控制台解决为什么或其他方法,而不是删除我必须找到罪魁祸首的每个脚本? DOM 没有将我可以看到的信息发送回 Chrome。

标签: jquery datetime datepicker


【解决方案1】:

好的,所以我发现问题出在 Bootstrap dateTimepicker 插件上,这里是可能有相同问题的人的完整代码:主要问题是检查 onchange 是否具有正确的顺序:dp.change not change.dp

//Date Time Split Function
         $(function () {
          function time1() {
            var dateTimeSplit = $('#incidentDateTime').val().split(' ');

            var dateSplit = dateTimeSplit[0].split('/');
            var currentDate = dateSplit[2] + '-' + dateSplit[0] + '-' + dateSplit[1];
            //currentDate is 18/10/2010

            $('#incidentDate').val(currentDate);

            var currentTime = dateTimeSplit[1] + ' ' + dateTimeSplit[2];
            //currentTime is 10:06 PM

            $('#incidentTime').val(currentTime);

            }
            $('#incidentdiscovered').on("dp.change", function () {
                time1();
            });

          });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 2020-11-28
    • 1970-01-01
    • 2021-06-25
    • 2020-07-23
    • 1970-01-01
    • 2016-05-08
    相关资源
    最近更新 更多