vendredi 12 décembre 2014

How could i delete old items in select tag option before adding new?



I am trying to do the following: every time an item gets added in my select option remove the old ones and only display the new added in my select option?


Right now it deletes all items and only show one item, but I added more item at the same time



unction onQuerySucceededaddNewDateFrom() {


var myDiv = document.getElementById("myDivResultSelect");

var length = myDiv.options.length;
for (var m = 0; m < length; m++) {
myDiv.options[m] = null;
}
while (myDiv.hasChildNodes()) {
myDiv.removeChild(myDiv.firstChild);
}

var dtstartCon = new Date(fromTimeConverted);
var dtEndCon = new Date(toTimeConverted);
var convertUtctoFromtime = new Date(dtstartCon.getTime() + dtstartCon.getTimezoneOffset() * 60 * 1000);
var start = new Date(convertUtctoFromtime);
var convertUtcToTime = new Date(dtEndCon.getTime() + dtEndCon.getTimezoneOffset() * 60 * 1000);
var end = new Date(convertUtcToTime);

var listItemEnumerator = collListItem.getEnumerator();

var bookedTimes = [];
var bookedFreeTimes = [];

while (listItemEnumerator.moveNext()) {
var oListItem = listItemEnumerator.get_current();
var eventDate = new Date(oListItem.get_item('EventDate'));
var endDate = new Date(oListItem.get_item('EndDate'));


bookedTimes.push([eventDate, endDate]);

}
while (start.getTime() < end.getTime()) {


var timeFree = true;
var firstnewDate = (start.setTime(start.getTime()));
var firstNewDt = new Date(firstnewDate);
var newDate = start.setTime(start.getTime() + mili);
start = new Date(newDate);

for (var i = 0; i < bookedTimes.length; i++) {

var time = bookedTimes[i][0];
var time2 = bookedTimes[i][1];

if (firstNewDt.getTime() != time.getTime() && start.getTime() != time2.getTime()) {


} else {
bookedTimes.splice(i, 1);
timeFree = false;
break;

}

}

if (timeFree) {



var from = new Date(firstNewDt);
var to = new Date(start);
var day = from.getDate();
if (from.getHours() <= 16 && from.getMinutes() <= 30 && from.getHours() >= 8 && !(from.getDay() == 0 || from.getDay() == 6)) {



if (day <= 9) {
day = "0" + day;
}
var month = from.getMonth() + 1;
if (month <= 9) {

month = "0" + month;
}
var year = from.getFullYear();
var hours = from.getHours();
if (hours < 10) {
hours = "0" + hours;
}

var minutes = from.getMinutes();
if (minutes < 30) {
minutes = "0" + minutes;
}


var dayto = to.getDate();
if (dayto <= 9) {
dayto = "0" + dayto;
}
var monthto = to.getMonth() + 1;
if (monthto <= 9) {
monthto = "0" + monthto;
}
var yearto = to.getFullYear();
var hoursto = to.getHours();
if (hoursto < 10) {
hoursto = "0" + hoursto;
}
var minutesto = to.getMinutes();
if (minutesto < 30) {
minutesto = "0" + minutesto;
}

bookedFreeTimes.push(year + "-" + month + "-" + day + " " + hours + ":" + minutes + " , " + yearto + "-" + monthto + "-" + dayto + " " + hoursto + ":" + minutesto);


}

}

}


$(function() {
$("#dialog").dialog({
autoOpen: false,
modal: true,
width: 400,
height: 400,

});


$("#dialog").dialog("open");
var free = "";


for (var j = 0; j < bookedFreeTimes.length; j++) {
free = bookedFreeTimes[j];
var array = new Array(free);
$('#myDivResultSelect').empty();


for (var k = 0; k < array.length; k++) {

var option = document.createElement("option");
option.text = array[k];
option.value = array[k];
myDiv.appendChild(option);


}

}


}

);


}







0 commentaires:

Enregistrer un commentaire