繁体   English   中英

聚焦栏上的只读文本输入3

[英]readonly text input on focus rails3

我遵循了Ryan Batesrailscast 213(日历)

在他使用文本输入字段弹出日期选择器的地方,这很好用。 我想限制输入日期,因此提供以下属性:

$(function() { 
    $("#question_deadline").datepicker({ duration: 'fast', maxDate: '+2m', minDate: 'now' });
});

现在,当我在文本字段中按时,日期选择器会弹出,但是我仍然可以通过在文本字段中键入来更改日期...所以我想我将_form.html.erb文件中的readonly选项设置为true ,这可行,但是日期不会写入数据库。

因此,我在application.js文件中创建了此文件:

 $(function() { 
            $("#question_deadline").datepicker({ duration: 'fast', maxDate: '+2m', minDate: 'now' });
    });

    $("#question_deadline").focus {
        function()
        $("#question_deadline").attr("readonly", true);
    }

    $("#question_deadline").blur {
        function()
        $("#question_deadline").removeAttr("readonly");
    }

但这完全无法使日期选择器正常工作吗?

准备好了:

$(function() {
    $("#question_deadline").focus(function() {
        $("#question_deadline").attr("readonly", true);
    });
});

$(function() {
    $("#question_deadline").blur(function() {
        $("#question_deadline").removeAttr("readonly");
    });
});

此致Thijs

我想您可能会拦截一个"onChange"事件,并验证控件中的值。 并非强制所有客户总是使用日期选择器。 我个人而言,通常更喜欢键入日期而不是选择日期。

如果您验证日期,并且该值恰好是无效的,则可以强制用户返回并显示日期选择器。 我谦虚地相信这将是一种更加用户友好的方法。

暂无
暂无

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

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