Bonjour,
Pour un formulaire web, je cherche à faire en javascript, l'équivalent de la formule :
@IsMember(@UserName;ExpertList))
ExpertList étant un champ de mon formulaire.
Des idées?
D'avance merci.
Damien
function isMember(array, value, nbCase, nbTrim){
if (array === undefined || array === null || isArray(array) === false || array.length === 0) {
return false;
}
if (value === undefined || value === null || value === "") {
return false;
}
if (nbCase === undefined || nbCase === null || nbCase === "" || isNaN(nbCase)) {
nbCase = false;
}
if (nbTrim === undefined || nbTrim === null || nbTrim === "" || isNaN(nbTrim)) {
nbTrim = false;
}
var i = 0, i2 = 0;
for (i = 0, i2 = array.length; i < i2; i++) {
if (nbCase === false) {
if (nbTrim === true) {
if (trim(array[i].toUpperCase()) === trim(value.toUpperCase())) {
return true;
}
}
else {
if (array[i].toUpperCase() === value.toUpperCase()) {
return true;
}
}
}
else {
if (nbTrim === true) {
if (trim(array[i]) === trim(value)) {
return true;
}
}
else {
if (array[i] === value) {
return true;
}
}
}
}
return false;
}
function isMemberIndex(array, value, nbCase, nbTrim){
if (array === undefined || array === null || isArray(array) === false || array.length === 0) {
return -1;
}
if (value === undefined || value === null || value === "") {
return -1;
}
if (nbCase === undefined || nbCase === null || nbCase === "" || isNaN(nbCase)) {
nbCase = -1;
}
if (nbTrim === undefined || nbTrim === null || nbTrim === "" || isNaN(nbTrim)) {
nbTrim = -1;
}
var i = 0, i2 = 0;
for (i = 0, i2 = array.length; i < i2; i++) {
if (nbCase === false) {
if (nbTrim === true) {
if (trim(array[i].toUpperCase()) === trim(value.toUpperCase())) {
return i;
}
}
else {
if (array[i].toUpperCase() === value.toUpperCase()) {
return i;
}
}
}
else {
if (nbTrim === true) {
if (trim(array[i]) === trim(value)) {
return i;
}
}
else {
if (array[i] === value) {
return i;
}
}
}
}
return -1;
}
function isMemberPseudo(array, value, nbCase, nbTrim, sep, rigthLeft, nbIndex){
if (array === undefined || array === null || isArray(array) === false || array.length === 0) {
return false;
}
if (value === undefined || value === null || value === "") {
return false;
}
if (nbCase === undefined || nbCase === null || nbCase === "" || isNaN(nbCase) || nbCase !== true) {
nbCase = false;
}
if (nbTrim === undefined || nbTrim === null || nbTrim === "" || isNaN(nbTrim) || nbTrim !== true) {
nbTrim = false;
}
var separator = "", valeur1 = "", valeur2 = "", i = 0, i2 = 0;
if (sep === undefined || sep === null || sep === "") {
separator = "|";
}
else {
separator = sep;
}
if (nbIndex === undefined || nbIndex === null || nbIndex === "" || isNaN(nbIndex) || nbIndex !== true) {
nbIndex = false;
}
if (rigthLeft === undefined || rigthLeft === null || rigthLeft === "" || (rigthLeft.toUpperCase().charAt(0) !== "L" && rigthLeft.toUpperCase().charAt(0) !== "D")) {
rigthLeft = "R";
}
else {
rigthLeft = rigthLeft.toUpperCase().charAt(0);
}
//si nbIndex = true renvois la position dans le tableau, sinon renvois true ou false
// rightleft indique si le pseuod est a gauche ou a droite du séprateur
for (i = 0, i2 = array.length; i < i2; i++) {
if (array[i].lastIndexOf(separator) === -1) {
valeur1 = array[i];
}
else {
if (rigthLeft.toUpperCase() === "R") {
valeur1 = rightString(array[i], separator);
}
else {
valeur1 = leftString(array[i], separator);
}
}
if (value.lastIndexOf(separator) === -1) {
valeur2 = value;
}
else {
if (rigthLeft.toUpperCase() === "R") {
valeur2 = rightString(value, separator);
}
else {
valeur2 = leftString(value, separator);
}
}
if (nbCase === false) {
valeur1 = valeur1.toUpperCase();
valeur2 = valeur2.toUpperCase();
}
if (nbTrim === true) {
valeur1 = trim(valeur1);
valeur2 = trim(valeur2);
}
if (valeur1 === valeur2) {
if (nbIndex === true) {
return i;
}
else {
return true;
}
}
}
return false;
}
function isMemberv2(array, value, nbCase, nbTrim, nbIndex){
if (array === undefined || array === null || isArray(array) === false || array.length === 0) {
return false;
}
if (value === undefined || value === null || value === "") {
return false;
}
if (nbCase === undefined || nbCase === null || nbCase === "" || isNaN(nbCase) || nbCase !== true) {
nbCase = false;
}
if (nbTrim === undefined || nbTrim === null || nbTrim === "" || isNaN(nbTrim) || nbTrim !== true) {
nbTrim = false;
}
if (nbIndex === undefined || nbIndex === null || nbIndex === "" || isNaN(nbIndex) || nbIndex !== true) {
nbIndex = false;
}
//si nbIndex = true renvois la position dans le tableau, sinon renvois true ou false
var i = 0, i2 = 0;
for (i = 0, i2 = array.length; i < i2; i++) {
if (nbCase === false) {
if (nbTrim === true) {
if (trim(array[i].toUpperCase()) === trim(value.toUpperCase())) {
if (nbIndex === true) {
return i;
}
else {
return true;
}
}
}
else {
if (array[i].toUpperCase() === value.toUpperCase()) {
if (nbIndex === true) {
return i;
}
else {
return true;
}
}
}
}
else {
if (nbTrim === true) {
if (trim(array[i]) === trim(value)) {
if (nbIndex === true) {
return i;
}
else {
return true;
}
}
}
else {
if (array[i] === value) {
if (nbIndex === true) {
return i;
}
else {
return true;
}
}
}
}
}
return false;
}