支払いスケジュールの小さなスクリプトを作成しました。
ボタンをクリックすると、入力が生成されます。この入力は、jquery ui フレームワークからの日付セレクター入力です。
最初の入力の日付を選択すると、別の入力が生成される場合、開始日は前の日付に 1 日を加えた日付になります。
これまでのところ、この作業の約半分が行われていますが、setDate オプションが計画どおりに機能していないようです。
次の jsfiddle を見ると、これまでに何が機能し、何が機能していないかがわかります。
jquery コードの概要は次のとおりです。
$('#add_payment_schedule_button').live('click',function(){
// get number of schedule date inputs already...
var schedule_count = $('.payment_schedule_date_wrap').length;
// get previous date if there is more than 1 date box already
if(schedule_count > 0)
{
var previous_date = $('#payment_schedules input.date:last').val();
alert(previous_date);
}
// the new input var for insertion
var payment_schedule = '<div class="payment_schedule_date_wrap"><input type="text" name="date['+schedule_count+']" class="date date_'+schedule_count+'" placeholder="..." /></div>';
// insert the new input into the scope
$('#payment_schedules').append(payment_schedule);
// load the date picker...
$('input.date_'+schedule_count).datepicker({ dateFormat: 'dd-mm-yy', setDate: previous_date});
});
例からわかるように、datepicker を選択し、日付を選択してから、別のスケジュール入力を追加すると、アラート機能により、選択した日付が表示されます。しかし、それは新しい日付ピッカーには挿入されません。
セレクターを間違っていますか?何が見えないのですか?
そして、単に1日をprevious_date変数に追加するにはどうすればよいですか?
御時間ありがとうございます。