Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 启用日期时间选择器的手动编辑_Javascript_Jquery_Datetimepicker - Fatal编程技术网

Javascript 启用日期时间选择器的手动编辑

Javascript 启用日期时间选择器的手动编辑,javascript,jquery,datetimepicker,Javascript,Jquery,Datetimepicker,我使用的是可以在这个页面上找到的anytime日期时间选择器插件 我需要能够手动编辑字段的功能。插件的作者提供了一个解决方案。不幸的是,这不是我想要的。虽然该字段在默认情况下是可编辑的,但一旦我单击日历图标并设置日期,我将无法再手动编辑该字段。下面是我尝试过的插件官方页面的代码。有没有办法修改它,让它以我想要的方式工作。多谢各位 $(“#按钮创建演示按钮”)。单击(函数(e){ $(“#按钮创建DemoInput”).AnyTime_noPicker().AnyTime_picker().f

我使用的是可以在这个页面上找到的anytime日期时间选择器插件

我需要能够手动编辑字段的功能。插件的作者提供了一个解决方案。不幸的是,这不是我想要的。虽然该字段在默认情况下是可编辑的,但一旦我单击日历图标并设置日期,我将无法再手动编辑该字段。下面是我尝试过的插件官方页面的代码。有没有办法修改它,让它以我想要的方式工作。多谢各位

$(“#按钮创建演示按钮”)。单击(函数(e){
$(“#按钮创建DemoInput”).AnyTime_noPicker().AnyTime_picker().focus();
e、 预防默认值();
});

您需要解除keydown事件与输入字段的绑定,然后删除readonly属性以使其可编辑

$(“#按钮创建演示按钮”)。单击(函数(e){
$(“#按钮创建DemoInput”).AnyTime_noPicker().AnyTime_picker().focus();
//删除每个按钮日期选择器单击的输入字段的只读
$('#ButtonCreationDemoInput').attr(“只读”,false);
//取消绑定输入字段的“keydown”事件,使其可编辑
$(“#ButtonCreationDemoInput”).unbind(“keydown”);
e、 预防默认值();
});

您需要解除keydown事件与输入字段的绑定,然后删除readonly属性以使其可编辑

$(“#按钮创建演示按钮”)。单击(函数(e){
$(“#按钮创建DemoInput”).AnyTime_noPicker().AnyTime_picker().focus();
//删除每个按钮日期选择器单击的输入字段的只读
$('#ButtonCreationDemoInput').attr(“只读”,false);
//取消绑定输入字段的“keydown”事件,使其可编辑
$(“#ButtonCreationDemoInput”).unbind(“keydown”);
e、 预防默认值();
});


您的解决方案已经解决了最初的问题,但现在用户可以添加错误的日期时间例如:2019-78-03 12:18:00。@Casper我知道。文档中指出,允许用户手动编辑值不是最佳做法:“警告:在没有令人信服的理由的情况下,不要使用按需解决方案,因为它不会阻止用户以错误的格式输入值!tab-over解决方案(以前演示过)提供更好的验证。”我也同意。这是一个MVC应用程序,因此我可以添加一些服务器端验证来防止错误的输入。谢谢你的回答。@Michael,不客气。如果你的问题已经解决,不要忘记接受这个答案。若要接受答案,请单击投票按钮下方的“复选标记”按钮。您的解决方案已修复初始问题,但现在用户可以添加错误的日期时间,例如:2019-78-03 12:18:00。@Casper我知道。文档中指出,允许用户手动编辑值不是最佳做法:“警告:在没有令人信服的理由的情况下,不要使用按需解决方案,因为它不会阻止用户以错误的格式输入值!tab-over解决方案(以前演示过)提供更好的验证。”我也同意。这是一个MVC应用程序,因此我可以添加一些服务器端验证来防止错误的输入。谢谢你的回答。@Michael,不客气。如果你的问题已经解决,不要忘记接受这个答案。要接受答案,请单击投票按钮下方的“复选标记”按钮。