【问题标题】:jquery datepicker range disable fieldjquery datepicker范围禁用字段
【发布时间】:2013-09-03 21:43:22
【问题描述】:

我有 2 个输入字段。一个用于日期选择器范围,另一个仅用于日期选择器月份。如果用户选择日期范围,我希望月份输入字段(也是月份日期选择器)被禁用......我尝试了很多事情并尝试搜索但没有运气......也许有人可以让我朝着正确的方向前进......

简单来说...如果有人选择第一个输入字段(#daterange),那么我希望禁用第二个输入字段(#monthselect)并且我希望在#monthselect 上禁用日期选择器

谢谢

jquery 日期选择器:

new Picker.Date.Range($$('input[id="daterange"]'), {
        timePicker: false,
        columns: 2,
        format: '%Y/%m/%d',
        positionOffset: {x: 0, y: 0},
        onSelect: function(date){
        $('#monthselect').attr("disabled",true);
        }
    });

new Picker.Date($$('input[id="monthselect"]'), {
    positionOffset: {x: 0, y: 0},
    pickOnly: 'years',
    pickOnly: 'months',
    format: '%Y/%m',
    useFadeInOut: !Browser.ie
    });

我的输入字段:

<input type="text" name="daterange" id="daterange" style="width: 200px">

<input type="text" name="monthselect" id="monthselect">

这对我有用(感谢 Andrew Donald Johnson):

new Picker.Date.Range($$('#daterange'), {
        timePicker: false,
        columns: 2,
        format: '%Y/%m/%d',
        positionOffset: {x: 0, y: 0},
        onSelect: function(date){
        document.getElementById("monthselect").disabled = true;     
        }
    });

【问题讨论】:

  • 我不明白你的问题。所以你想要一个日期范围,从第一个输入开始,在第二个输入结束,对吧?还有什么?
  • 没有。简单来说......如果有人选择第一个输入字段(#daterange),那么我希望禁用第二个输入字段(#monthselect)并且我希望在#monthselect 上禁用日期选择器
  • 那么如果选择了第一个,那么禁用第二个?
  • 是的,它可能也很简单......我只是想不通

标签: jquery datepicker


【解决方案1】:

根据 cmets 中的讨论,这是您要求的内容

$('#daterange').datepicker({
        timePicker: false,
        columns: 2,
        format: '%Y/%m/%d',
        positionOffset: {x: 0, y: 0},
        onSelect: function(date){
        $('#monthselect').attr("disabled",true);
        }
    });

$('#monthselect').datepicker({
    positionOffset: {x: 0, y: 0},
    pickOnly: 'years',
    pickOnly: 'months',
    format: '%Y/%m',
    //useFadeInOut: !Browser.ie
    });

http://jsfiddle.net/pdhb9/1/

【讨论】:

    【解决方案2】:

    这段代码应该可以帮到你!

    var data_01 = document.getElementById("daterange");
    data_01.onchange = function () {
       if (this.value != "") {
          document.getElementById("monthselect").disabled = true;
       }
    }
    

    【讨论】:

    • 您好,您的帖子已被标记为“低质量”,可能是因为它仅包含代码。您可以通过解释这回答问题的确切方式和原因来大幅改进您的答案?
    • 问题是关于 jquery 和 datepicker 而你的解决方案是在 javascript 中
    猜你喜欢
    • 2011-07-04
    • 1970-01-01
    • 2012-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多