0

最初と 2 番目から値を取得した後、3 番目のフィールドに値を追加する必要があります。より明確にするために、以下にいくつかのコードを示します。

<input type="text" name="first_date" class="datepicker" date-format="dd-MM-yyyy" id="first_date" />
<select name="duration">
    <option value="">-- Select --</option>
    <option value="6">6 months</option>
    <option value="12">12 months</option>
    <option value="18">18 months</option
</select>

<input type="text" name="end_date" id="end_date" />

私は日付を扱っており、datepicker (jquery) を使用しています。#first_date で選択した日付に 6 か月、12 か月、18 か月、または 24 か月を追加し、3 番目のフィールド #end_date に期間を追加した後の日付を表示する必要があります。

また、選択(オプション)の変更時に値が変更される必要があります。どうすればそれを機能させることができますか?検索しましたが、探していた解決策が見つかりませんでした。何か役に立ちますか?

4

1 に答える 1

2

試す

function updateEndDate(){
    var sdate = $('#first_date').datepicker('getDate'), duration = parseInt( $('select[name="duration"]').val(), 10) || 0;
    if(sdate){
        var edate = new Date(sdate.setMonth(sdate.getMonth() + duration));
        $('#end_date').datepicker('setDate', edate);
    }
}

$('#first_date').datepicker({
    onSelect: updateEndDate
})
$('select[name="duration"]').change(updateEndDate)

$('#end_date').datepicker({});

デモ:フィドル

于 2013-08-27T04:19:37.930 に答える