「ドロップした」ドラッグ&ドロップカレンダーは、詳細を変数に渡す必要があります。jQueryループでそれぞれの「ドロップ」のための隠しフィールドを生成する
これまでのところ、テキストエリアに追加してデータを記録しているか、最後のドロップを取る隠しフィールドを1つ作成することができました。
しかし、私は各項目を隠しフィールドに入れる必要があるので、次のページに渡してPHPで処理します。
私はいくつかの種類のループが必要なことを推測しているので、各ドロップごとに... hiddenフィールドを生成します。
しかし、私はそれが動作するように運がないです。
ここに私のコードです。どんな助けでも本当に便利です。
おかげで何ができるか
はdrop: function(date, allDay) { // this function is called when something is dropped
// retrieve the dropped element's stored Event Object
var originalEventObject = $(this).data('eventObject');
// we need to copy it, so that multiple events don't have a reference to the same object
var copiedEventObject = $.extend({}, originalEventObject);
// assign it the date that was reported
copiedEventObject.start = date;
copiedEventObject.allDay = allDay;
// render the event on the calendar
// the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/)
$('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
//Record and add dropped items to list
var txt = $("#listbox");
var dtstart = copiedEventObject.start + '\n'
var caltitle = copiedEventObject.title
txt.val(txt.val() + dtstart); // For our reference - Remove later
var input = document.createElement("input");
input.setAttribute("type", "hidden");
input.setAttribute("name", "dtstart");
input.setAttribute("value", dtstart);
//append to form element that you want .
document.getElementById("calendarform").appendChild(input)
// remove the element from the "Draggable Events" list
$(this).remove();
}
});
});
'document.createElement()'? 'setAttribute()'を使って値を設定しますか?あなたはjQueryを使用していますので、このようなことから離れましょう。それ以外に、ネイティブJSを使用して値を設定する適切な方法は、 'input.value = ...;' – ThiefMaster
ありがとうございます。私は今それを更新しました。 –