首页 > 解决方案 > 表单方法 post 和 jquery/javascript 代码在所有浏览器中的 1 台计算机上运行

问题描述

我有一个用 asp.net core 2.1 编码的网站。在其中一个剃须刀视图中,我有 2 个<input type="date">(开始日期和结束日期)、一个submit按钮和一些 jquery/javascript 代码(检查结束日期不在开始日期之前并且开始日期不在当前日期之后并且开始日期不是' t 在结束日期之后)。这一切都可以在所有浏览器和所有计算机上正常运行,除了一台计算机。

不工作的系统正在运行 Windows 10 pro x64,一切都应该更新。

完全相同的设置在另一台工作的笔记本电脑上。两台笔记本电脑都属于同一家公司,因此它们的制造商、操作系统和软件都相同。它们都不是域的一部分。

页面加载速度非常快,就好像它被缓存了一样,但是我清除了所有浏览器数据,并且正在显示代码和 html 标记的更新。我似乎无法确定问题所在。这是我到目前为止所尝试的:

*UPDATE**** 我尝试将默认输入日期更改为 Jquery datepicker。同样的错误仍然存​​在。它默认为 1901 年 1 月 1 日。适用于其他任何地方。这仅在一台计算机上发生:-(问题图片:https ://imgur.com/vcu2Bq5.jpg ***更新*

这是我的代码:HTML/Razor 视图

 <form method="post">
        <table>
            <tr>
                <td><label>Fra dato</label></td>
                <td><label>Til dato</label></td>
                <td></td>
            </tr>
            <tr>
                <td><input type="date" id="TB_StartDate" name="TB_StartDate" required value="@ViewBag.StartDate" /></td>
                <td><input type="date" id="TB_EndDate" name="TB_EndDate" required value="@ViewBag.EndDate" /></td>
                <td><input type="submit" name="BTN_ReloadDates" class="btn btn-primary" value="Hent ændringer" /></td>
            </tr>
            <tr>
                <td colspan="3"></td>
            </tr>
        </table>
    </form>
    <label class="label label-danger" style="font-size: large;" for="Datepick" id="L_Warning"></label>

jQuery

<script src="~/js/Jquery.min.js"></script>
<script src="~/js/moment.min.js"></script>
<script>

    $("#L_Warning").hide();


    $('#TB_StartDate').change(function () {
        $("#L_Warning").hide();
        var StartDate = $("#TB_StartDate").val();
        var EndDate = $("#TB_EndDate").val();
        var now = moment().format('YYYY-MM-DD');

        if (StartDate > now) {
            $("#TB_StartDate").val(now);
            $("#TB_EndDate").val(now);
            $("#L_Warning").show();
            $("#L_Warning").fadeOut().fadeIn().fadeOut().fadeIn().fadeOut().fadeIn().fadeOut().fadeIn();

            $("#L_Warning").text("Du kan ikke vælge en nyere dato end idag.");

        }
        else if (StartDate > EndDate) {
            $("#TB_EndDate").val(StartDate);
        }


    });

    $('#TB_EndDate').change(function () {
        $("#L_Warning").hide();
        var StartDate = $("#TB_StartDate").val();
        var EndDate = $("#TB_EndDate").val();
        var now = moment().format('YYYY-MM-DD');

        if (EndDate > now) {
            $("#TB_EndDate").val(now);
            $("#L_Warning").show();
            $("#L_Warning").fadeOut().fadeIn().fadeOut().fadeIn().fadeOut().fadeIn().fadeOut().fadeIn();

            $("#L_Warning").text("Du kan ikke vælge en nyere dato end idag.");

        }
        else if (EndDate < StartDate) {
            $("#TB_StartDate").val(EndDate);
        }


    });


</script>

标签: javascriptc#jqueryhtmlasp.net-core

解决方案


我解决了:-)

事实证明,问题与系统上的用户有关。(我忘了删除一些与该特定用户混淆的测试代码)。


推荐阅读