javascript - 表单方法 post 和 jquery/javascript 代码在所有浏览器中的 1 台计算机上运行
问题描述
我有一个用 asp.net core 2.1 编码的网站。在其中一个剃须刀视图中,我有 2 个<input type="date">
(开始日期和结束日期)、一个submit
按钮和一些 jquery/javascript 代码(检查结束日期不在开始日期之前并且开始日期不在当前日期之后并且开始日期不是' t 在结束日期之后)。这一切都可以在所有浏览器和所有计算机上正常运行,除了一台计算机。
不工作的系统正在运行 Windows 10 pro x64,一切都应该更新。
完全相同的设置在另一台工作的笔记本电脑上。两台笔记本电脑都属于同一家公司,因此它们的制造商、操作系统和软件都相同。它们都不是域的一部分。
页面加载速度非常快,就好像它被缓存了一样,但是我清除了所有浏览器数据,并且正在显示代码和 html 标记的更新。我似乎无法确定问题所在。这是我到目前为止所尝试的:
- 我在所有浏览器上的其他计算机上尝试了完全相同的设置(据我所知
- 我试过 Chrome、Firefox、Internet Explorer 和 Edge。结果相同
- 我尝试清除浏览器数据(一切)
*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>
解决方案
我解决了:-)
事实证明,问题与系统上的用户有关。(我忘了删除一些与该特定用户混淆的测试代码)。
推荐阅读
- python - Discord Bot 到 DM 特定角色
- node.js - 如何在 Typescript 中将 Express 查询参数类型绑定为字符串数组
- javascript - 根据当前日期的时间隐藏元素
- apache-kafka - Kafka - 代理是否有可能成为同一分区的领导者和追随者?
- python - Django - 使用一个评论模型为不同的页面创建评论系统
- excel - VBA:工作表对象的保护方法上的“变量未定义”错误
- flutter - 在 ConnectionState.done 之后使用多个流重新启动 StreamBuilder
- amazon-web-services - 将 IAM 角色附加到多个 EC2 实例
- java - 有没有办法从文件创建 Java 枚举?
- c - 二叉搜索树,递归函数 Exsists 在比较字符串中抛出“core dumped”