如何在选择更改上设置datepicker?

时间:2016-06-02 05:56:00

标签: jquery jquery-ui datepicker

我有一个非常简单的问题。但我无法解决这个问题。

我想在选择更改时将datepicker设置为输入。此外,在将select更改为other选项时,应删除datepicker,并且只显示文本框。

这是我到目前为止所尝试的

jQuery(document).ready(function(){

                    jQuery('#filevalidity').change(function(){
                        var option = jQuery(this).find("option:selected").val();
                        if(option === "MAX_DOWNLOAD_LIMIT")
                        {

                            jQuery('#dlorex').next('input').datepicker("destroy");
                        }
                        if(option === "EXPIRY_DATE")
                        {

                            jQuery('#dlorex').next('input').datepicker({minDate : 1});
                        }
                    });

                });

Here is the fiddle

我哪里错了?

2 个答案:

答案 0 :(得分:1)

next()让兄弟姐妹处于同一水平(在这种情况下,与tr相同)​​

您可以使用find()定位input。你也没有正确关闭几个标签。

你走了:



jQuery(document).ready(function() {

  jQuery('#filevalidity').change(function() {
    var option = jQuery(this).find("option:selected").val();
    if (option === "MAX_DOWNLOAD_LIMIT") {

      jQuery('#dlorex').find("input[name='downlimit']").datepicker("destroy");
    }
    if (option === "EXPIRY_DATE") {

      jQuery('#dlorex').find("input[name='downlimit']").datepicker({
        minDate: 1
      });
    }
  });

});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<div id="general">
  <table width="100%">

    <tr>
      <td>File Validity:</td>
      <td>
        <select name="filevalidity" id="filevalidity">
          <option value="MAX_DOWNLOAD_LIMIT">Download Limit</option>
          <option value="EXPIRY_DATE">Expiry Date</option>
        </select>
      </td>
    </tr>
    <tr id="dlorex">
      <td>
        <label>Download Limit</label>
      </td>
      <td>
        <input type="text" name="downlimit" />
      </td>
    </tr>

  </table>
</div>
&#13;
&#13;
&#13;

小提琴: http://jsfiddle.net/ktjsyfg0/4/

答案 1 :(得分:-1)

$( “日期”)。日期选择器({   onSelect:function(dateText){     display(“选择日期:”+ dateText +“;输入的当前值:”+ this.value);   } });