How to get Day from Date

chanikya
Kilo Sage

Hi,

function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}

var seldate=g_form.getValue('date');
var objdate=new Date(seldate);
var selday=objdate.getDay();
alert(selday);
 if(selday==0||selday==6)
 {
 alert('select business day');
 g_form.setValue('date','');
 }
}

but i am getting "NaN " value in alert.

 

1 ACCEPTED SOLUTION

did you try with the code which i have posted ?

 

Updated Code:

 

var df = g_form.getValue('u_date');
	
	var op=df.split('/');
	var ress=op[2]+'/'+op[1]+'/'+op[0];
	
		var objdate=new Date(ress);
		alert(objdate);
		var selday=objdate.getDay();
		var res = parseInt(selday);
		alert(res);
		if(res==0||res==6)
			{
			alert('select business day');
			
		}

 

Change the field value. if you have a data/time type field then you can follow the same split() to make your data format like yyyy-MM-dd 

 

View solution in original post

29 REPLIES 29

find_real_file.png

i don't want return Date, just it should check "Day"

like if we select Sunday Date Or SaturDay Date it should not accept , it just accept only Monday to Friday Dates only 

Hi,

Try this,

var gdt = new GlideDateTime(g_form.getValue('date')); // Your "Date" value
alert("GDT :: "+gdt.getDayOfWeek());
if(gdt.getDayOfWeek()==5 || gdt.getDayOfWeek()==6 ){ // Here 5 & 6 are for sat & sun respesctively.
  
  // Do your Stuff
  
}
else{
  // Do your Stuff
}

 

Hopefully, it will help you.

Regards,

Vaibhav Chaudhari

GlideDateTime() works only in server side . you have to change your script from client to server. 

 

Hi,

 

Now I try this it will work,

 

Script Include :

// Create new Script include Function 
// Be sure the "Client callable" checkbox is checked   
validDate : function(){
	
	var gdt = new GlideDateTime(this.getParameter('sysparm_date')); // Your "Date" value
	gs.log("GDT :: "+gdt.getDayOfWeek());
	if(gdt.getDayOfWeek()==5 || gdt.getDayOfWeek()==6 ){ // Here 5 & 6 are for sat & sun respesctively.
		return false;
	}
	else{
		return true;
	}
}


onChange client SCript : 


function onChange(control, oldValue, newValue, isLoading) {
	if (isLoading) {
		return;
	} 
if(newValue != oldValue){
		var helperGA = new GlideAjax('YOUR_SCRIPT_INCLUDE_NAME');
		helperGA.addParam('sysparm_name', 'validDate');
		helperGA.addParam('sysparm_date', newValue);
		helperGA.getXML(function (response) {
			var answer = response.responseXML.documentElement.getAttribute("answer");
// 			alert(answer);
			if(answer == false){
				alert('select business day');
				g_form.setValue('date','');
			}
			
		});
	}
}

Regards

Vaibhav Chaudhari