Firefox doesn't show people picker field

Discussions about Forms Designer for SharePoint 2013 / 2016 and Office 365.
Leslie
Posts: 32
Joined: Thu Dec 05, 2019

10 Mar 2020

Hello MNikitina !

I started to try to solve this problem with a member of the support team, Nikita, and for now I don't have a solution. :(

There the requested informations :
_ All my person fields are on the "Default" Template.
_ I have done several tests, with a Ctrl+F5 between each, just to be sure :

With this simple JS code :

Code: Select all

fd.field('Demandeur').control('ready',function() { 
  fd.field('Demandeur').readonly(true);
});
fd.field('Utilisateurs').control('ready',function() { 
  fd.field('Utilisateurs').readonly(true);
});
fd.field('Delegations').control('ready',function() { 
  fd.field('Delegations').readonly(true);
});
fd.field('Responsable_x0020_direct').control('ready',function() { 
  fd.field('Responsable_x0020_direct').readonly(true);
});
fd.field('Responsable_x0020_boite').control('ready',function() { 
  fd.field('Responsable_x0020_boite').readonly(true);
});
fd.field('Utilisateurs1').control('ready',function() { 
  fd.field('Utilisateurs1').readonly(true);
});
fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
});
fd.field('AssignedTo').control('ready',function() { 
  fd.field('AssignedTo').readonly(true);
});

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);
  return true;
});
>> Open an existing item:
◾Not OK : Demandeur and Utilisateurs are readonly but all the others are invisible.
>> Open a new item:
◾Not OK : Demandeur is readonly but all the others are invisible.


With only the Demandeur field in readonly :

Code: Select all

fd.field('Demandeur').control('ready',function() { 
  fd.field('Demandeur').readonly(true);
}); /*
fd.field('Utilisateurs').control('ready',function() { 
  fd.field('Utilisateurs').readonly(true);
});
fd.field('Delegations').control('ready',function() { 
  fd.field('Delegations').readonly(true);
});
fd.field('Responsable_x0020_direct').control('ready',function() { 
  fd.field('Responsable_x0020_direct').readonly(true);
});
fd.field('Responsable_x0020_boite').control('ready',function() { 
  fd.field('Responsable_x0020_boite').readonly(true);
});
fd.field('Utilisateurs1').control('ready',function() { 
  fd.field('Utilisateurs1').readonly(true);
});
fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
});
fd.field('AssignedTo').control('ready',function() { 
  fd.field('AssignedTo').readonly(true);
});*/

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);/*
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);*/
  return true;
});
>> Open an existing item:
◾Not OK : Demandeur is readonly, but all the others are invisible.
>> Open a new item:
◾Not OK : Demandeur is readonly, but all the others are invisible.


Same thing with the Utilisateurs field
>> Open an existing item:
◾Not OK : Demandeur field is ok, Utilisateurs is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur field is ok, Utilisateurs is readonly, but the others are invisible.


Same thing with the Delegations field
>> Open an existing item:
◾Not OK : Demandeur and Utilisateurs are ok, Delegations is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur and Utilisateurs are ok, Delegations is readonly, but the others are invisible.


Same thing with the Responsable direct field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs and Delegations are ok, Responsable direct is readonly, but the others are invisible.


Same thing with the Responsable boite field
>> Open an existing item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct are ok, Responsable boite is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct are ok, Responsable boite is readonly, but the others are invisible.


Same thing with the Utilisateurs1 field
>> Open an existing item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite are ok, Utilisateurs1 is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite are ok, Utilisateurs1 is readonly, but the others are invisible.


Same thing with the Directeur actuel field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite, Utilisateurs1 are ok, Directeur actuel is readonly, but AssignedTo is invisible.


Same thing with the AssignedTo field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾OK : all the fields are visible and are reacting normally.

So it seems that the problem is just after the readonly. All the person fields after a field with a readonly are impacted.
Looks like a bug... :shock:


Thank you four your help ! This is really urgent...

Leslie
Posts: 32
Joined: Thu Dec 05, 2019

11 Mar 2020

Hello everybody !

Good news !
By talking to Nikita, it gave me the idea to test my previous code (with readonly(true)) just by adding the settimeout: It works very well! :D

So the code now is :

Code: Select all

setTimeout(function(){ 
	fd.field('Demandeur').control('ready',function() { 
	  fd.field('Demandeur').readonly(true);
	});
	fd.field('Utilisateurs').control('ready',function() { 
	  fd.field('Utilisateurs').readonly(true);
	});
	fd.field('Delegations').control('ready',function() { 
	  fd.field('Delegations').readonly(true);
	});
	fd.field('Responsable_x0020_direct').control('ready',function() { 
	  fd.field('Responsable_x0020_direct').readonly(true);
	});
	fd.field('Responsable_x0020_boite').control('ready',function() { 
	  fd.field('Responsable_x0020_boite').readonly(true);
	});
	fd.field('Utilisateurs1').control('ready',function() { 
	  fd.field('Utilisateurs1').readonly(true);
	});
	fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
	  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
	});
	fd.field('AssignedTo').control('ready',function() { 
	  fd.field('AssignedTo').readonly(true);
	});
}, 1000);

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);
  return true;
});

I have a question :
I kept the ready function, just to be sure the field is ready. (In my tests, it works fine without too.)
Does that slow down the execution a lot? :?:
I ask that for the few users who are in places where the internet connection is very very bad.

Thank you in advance for your response and have a nice day !

User avatar
mnikitina
Posts: 264
Joined: Wed Jun 05, 2019

16 Mar 2020

Hello Leslie,

I'm sorry for the delay in reply.

As Nikita mentioned in the email, this shouldn't slow down the form load or scripting execution. The users with a very slow internet connection should experience approximately the same results with and without the ready event, but it should be just a little safer to keep ready included.

Locked
  • Information
  • Who is online

    Users browsing this forum: No registered users and 5 guests