Se aplica a:
- Winshuttle Foundation
Funciones auxiliares globales
Guías de referencia de JavaScript
Las funciones auxiliares globales son funciones prudentes que, generalmente, se usan para manipular datos en campos y realizar tareas tales como convertir texto de mayúscula a minúscula, realizar un promedio de un conjunto de valores en un grupo de repetición... Es más probable que utilice estas funciones si escribe su propio código de JavaScript para crear una función específica que no tiene las posibilidades de las funciones que haya creado con Winshuttle Composer.
Haga clic en una de las funciones siguientes para ver una descripción, los parámetros y una muestra de código de JavaScript básico.
addDays(date, days, ignoreWeekends)
Devuelve un nuevo objeto de fecha que contiene un valor de fecha especificado con un número indicado de días añadidos.
Parámetros
- dateValue: Objeto de fecha que contiene la fecha original
- days: Número de días que se añadirán a la fecha original
- ignoreWeekends: Especifica si se omitirán o no los fines de semana (sábado/domingo). Se establece en True o False.
Ejemplo
var date = addDays(today(), 10, false);
jQuery.alert('10 days from now is: ' + date);
addSeconds(dateValue, seconds)
Devuelve un nuevo objeto de fecha que contiene un valor de fecha especificado con un número indicado de segundos añadidos.
Parámetros
- dateValue: Objeto de fecha que contiene la hora original
- seconds: Número de segundos que se añadirán a la hora original
Ejemplo
var rightNow = new Date();
var later = addSeconds(rightNow, 60);
jQuery.alert('60 seconds from now it will be: '+ later);
avg(field)
Devuelve la media (suma o recuento) de valores numéricos de un grupo de repetición enlazado al campo especificado.
Parámetros
- field: XPath de un campo numérico de un grupo de repetición
Ejemplo
var avgCost = avg('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Cost');
jQuery.alert('Average cost is: ' + avgCost);
ceiling(value)
Devuelve el entero inferior mayor o igual que el valor numérico especificado (consulte la función JavaScript Math.ceil()).
Parámetros
- value: Valor numérico del cual se realizará la operación «ceiling»
Ejemplo
var decVal = $form.getValue('/my:myFields/my:decimalField');
var intCeil = ceiling(decVal);
jQuery.alert('Ceiling of ' + decVal + ' is: ' + intCeil);
concat()
Devuelve una nueva cadena de todos los argumentos concatenados. Si el argumento especifica un valor de XPath, se utilizará el valor del campo de referencia. Si XPath hace referencia a un grupo de repetición, devolverá una concatenación de todos los valores del grupo de repetición.
Parámetros
Número variable de argumentos que se concatenarán. Si un argumento contiene XPath, se sustituirá su valor de formulario. Si XPath hace referencia a una sección de repetición, concatenará todos los valores del campo de la sección de repetición.
Ejemplo
var lStr = concat('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Text');
jQuery.alert('Concatenated value: ' + lStr);
contains(text,find_text)
Devuelve true si el valor de la cadena especificado por find_text se encuentra en el valor de cadena especificado por text.
Parámetros
- text: Cadena en la cual se va a probar el contenido
- find_text: Cadena que se va a buscar en el texto
Ejemplo
if (contains($form.getValue('/my:myFields/my:field_1', 'Needle')) {
jQuery.alert('Found Needle in the field');
}
count(fieldname, [regex])
Devuelve el número de valores de un grupo de repetición.
Parámetros
- field: XPath de un campo del grupo de repetición
- regex (opcional): Una expresión regular que devolverá el número de instancias coincidentes.
Ejemplo
var rCount = count('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Cost');
jQuery.alert('Number of items in table is: '+rCount);
diffDays (date1, date2, weekdaysOnly)
Devuelve el número de días entre dos fechas con una opción para incluir solo los días de la semana (no los fines de semana).
Parámetros
- date1: Objeto de fecha que contiene la fecha de inicio
- date2: Objeto de fecha que contiene la fecha de finalización
- weekendsOnly: Especifica si se omitirán o no los fines de semana (sábado/domingo). Se establece en True o False.
Ejemplo
var date1 = $form.getValue('/my:myFields/my:dateField_1');
var date2 = $form.getValue('/my:myFields/my:dateField_2');
var days = diffDays(date1, date2, false);
La variable «days» contendrá el número de días entre las dos fechas (incluidos los fines de semana).
first(field)
Devuelve el primer valor de XPath especificado de un grupo de repetición.
Parámetros
- field: XPath de un campo del grupo de repetición
Ejemplo
var fItem = first('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Title');
jQuery.alert('First item in table has the Title: '+fItem);
floor(value)
Devuelve el entero superior menor o igual que el valor numérico especificado (consulte la función JavaScript Math.floor()).
Parámetros
- value: Valor decimal del cual se realizará la operación «floor»
Ejemplo
var decVal = $form.getValue('/my:myFields/my:decimalField');
var intFloor = floor(decVal);
jQuery.alert('Floor of ' + decVal + ' is: ' + intFloor);
formatDate(dateString, pattern)
De este modo se podrá volver a formatear una cadena de datos mediante el patrón proporcionado.
Parámetros
- dateString: Una cadena con el formato aaaa-mm-dd o una cadena que representa una fecha RFC2822 o ISO 8601 (se pueden usar otros formatos, pero los resultados pueden ser inesperados).
- pattern: Los patrones de formato se basan en java.text.SimpleDateFormat. Consulte a continuación.
Ejemplo
Para establecer un nuevo campo en otro formato de fecha:
$form.setValue(‘/my:myFields/my:field_1’, formatDate($form.getValue(‘/my:myfields:my:date_field2’), “dd-mm-yyyy”));
Máscara |
Descripción |
---|---|
d |
Día del mes en dígitos; sin ceros delante de los días de un dígito. |
dd |
Día del mes en dígitos; con ceros delante de los días de un dígito. |
ddd |
Día de la semana en formato de abreviatura de tres letras. |
dddd |
Día de la semana en formato completo. |
m |
Mes en dígitos; sin ceros delante de los meses de un dígito. |
mm |
Mes en dígitos; con ceros delante de los meses de un dígito. |
mmm |
Mes en formato de abreviatura de tres letras. |
mmmm |
Mes en formato completo. |
aa |
Dos últimos dígitos del año; con ceros en los meses menores que 10. |
aaaa |
Año representado con cuatro dígitos. |
h |
Horas; sin ceros en las horas de un dígito (formato de 12 horas). |
hh |
Horas; con ceros en las horas de un dígito (formato de 12 horas). |
H |
Horas; sin ceros en las horas de un dígito (formato de 24 horas). |
HH |
Horas; con ceros en las horas de un dígito (formato de 24 horas). |
M |
Minutos; sin ceros delante de los minutos de un dígito. |
MM |
Minutos; con ceros delante de los minutos de un dígito. |
s |
Segundos; sin ceros delante de los segundos de un dígito. |
ss |
Segundos; con ceros delante de los segundos de un dígito. |
I o L |
Milisegundos. l significa tres dígitos. L significa dos dígitos. |
t |
Minúsculas; cadena que representa las horas de un carácter: a o p. |
tt |
Minúsculas; cadena que representa las horas de dos caracteres: am o pm. |
T |
Mayúsculas; cadena que representa las horas de un carácter: A o P. |
TT |
Mayúsculas; cadena que representa las horas de dos caracteres: AM o PM. |
Z |
Abreviatura de la zona horaria de EE. UU., por ejemplo, EST o MDT. Con las zonas horarias que no son de EE. UU. o en el explorador Opera, se devuelve la diferencia GMT/UTC, por ejemplo, GMT-0500 |
o |
Diferencia de la zona horaria GMT/UTC, por ejemplo, -0500 o +0230. |
S |
Sufijo ordinal de la fecha (st, nd, rd o th). Funciona correctamente con d. |
'…' o "…" |
Secuencia literal de caracteres. Las comillas se quitan. |
UTC: |
Deben ser los cuatro primeros caracteres de la máscara. Convierte la fecha de la hora local a UTC/GMT/Zulu antes de aplicar la máscara. Se quita el prefijo «UTC:». |
Máscaras con nombre
Nombre |
Máscara |
Ejemplo |
---|---|---|
default |
ddd mmm dd yyyy HH:MM:ss |
Sat Jun 09 2007 17:46:21 |
shortDate |
m/d/aa |
2007-06-09 |
mediumDate |
mmm d, aaaa |
Jun 9, 2007 |
longDate |
mmmm d, aaaa |
sábado, 9 de junio de 2007 |
fullDate |
dddd, mmmm d, aaaa |
sábado, 9 de junio de 2007 |
shortTime |
h:MM TT |
5:46 PM |
mediumTime |
h:MM:ss TT |
5:46:21 PM |
longTime |
h:MM:ss TT Z |
5:46:21 PM EST |
isoDate |
aaaa-mm-dd |
2007-06-09 |
isoTime |
HH:MM:ss |
5:46:21 PM |
isoDateTime |
aaaa-mm-dd'T'HH:MM:ss |
2007-06-09T17:46:21 |
isoUtcDateTime |
UTC:aaaa-mm-dd'T'HH:MM:ss'Z' |
2007-06-09T22:46:21Z |
getRepeatingValues(field)
Devuelve una matriz de JavaScript que contiene todos los valores de un grupo de repetición enlazado al campo especificado.
Parámetros
- field: XPath de un campo de un grupo de repetición
Ejemplo
var vals = getRepeatingValues('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Values');
last(field)
Devuelve el último valor de XPath especificado de un grupo de repetición.
Parámetros
- field: XPath de un campo del grupo de repetición
Ejemplo
var lItem = first('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Title');
jQuery.alert('Last item in table has the Title: '+lItem);
max(field)
Devuelve el valor numérico superior de un conjunto de valores de un grupo de repetición.
Parámetros
- field: XPath de un campo numérico de un grupo de repetición
Ejemplo
var high = max('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Cost');
jQuery.alert('Highest cost item is: '+high);
min(field)
Devuelve el valor numérico inferior de un conjunto de valores de un grupo de repetición.
Parámetros
- field: XPath de un campo numérico de un grupo de repetición
Ejemplo
var low = min('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:Cost');
jQuery.alert('Lowest cost item is: '+low);
normalize_space(text)
Se quitarán todos los espacios de «text».
Parámetros
- text: Cadena de la cual se van a quitar los espacios
Ejemplo
Para quitar automáticamente espacios de un campo de entrada:
$form.setValue('/my:myFields/my:field_1',normalize_space($form.getValue('/my:myFields/my:field_1')));
now()
Devuelve un nuevo objeto de fecha que contiene el día y la hora actuales.
Parámetros
Ninguno
Ejemplo
var currentTime = now();
jQuery.alert('The time is now: '+currentTime);
number(text)
Convierte una cadena en un valor numérico.
Parámetros
- text: Cadena que contiene un valor numérico. Si la cadena no contiene un valor numérico, esta función devolverá Number.NaN
Ejemplo
var stringVal = $form.getValue('/my:myFields/my:field_1');
var numberVal = number(stringVal);
jQuery.alert('The number value is: ' + numberVal);
nz(value)
Devuelve un valor numérico de texto o 0 si no es un número.
Parámetros
- value: Valor de cadena que se va a convertir en número o en 0
Ejemplo
var nzVal = nz($form.getValue('/my:myFields/my:field_1'));
jQuery.alert('nz() returned: ' + nzVal);
pad(s,length,padChar,side)
Devuelve una nueva cadena con la longitud definida por el parámetro length. El relleno se añade a la parte izquierda o derecha (o se distribuye uniformemente entre ambas) de la cadena.
Parámetros
- s: Cadena a la cual se añadirá el relleno
- length: Longitud de la cadena que se devolverá
- padChar: Carácter que se va a usar para el relleno
- side: Parte de la cadena que se va a rellenar (puede ser izquierda, derecha o ambas)
Ejemplo
var paddedStr = pad($form.getValue('/my:myFields/my:field_1'), 20, ' ', 'left');
renderMap(mapname, desc, address, city, state, zip, country)
Representa el elemento auxiliar de mapa especificando una dirección. Si un argumento especificado es XPath, se usará el valor del campo al cual se hizo referencia.
Parámetros
- mapname: Nombre del elemento de mapa (utilice el mismo nombre si el mapa se usa en varias vistas)
- desc: Descripción de la ubicación que se mostrará cuando se seleccione el marcador de ubicaciones del mapa
- address: Dirección de la ubicación del mapa
- city: Ciudad de la ubicación del mapa (opcional)
- state: Estado de la ubicación del mapa (opcional)
- zip: Código postal de la ubicación del mapa (opcional)
- country: País de la ubicación del mapa (opcional)
Ejemplo
En este ejemplo se usan todos los argumentos para especificar la ubicación del mapa. Puede ser cualquier campo definido en la solución (o cualquier valor codificado).
$form.getValue('/my:myFields/my:city',$form.getValue('/my:myFields/my:state', form.getValue('/my:myFields/my:zip’, $form.getValue('/my:myFields/my:country')
En este ejemplo se usa un único campo que contiene la ubicación completa:
(field winshuttlecorp = "20021 120th Ave. NE, Ste 101, Bothell, WA 98011") renderMap("BothellCorporate", "Corporate Office", $form.getValue('/my:myFields/my:winshuttlecorp', "", "", "", "")
round(value)
Devuelve el valor de un número redondeado al entero más próximo (consulte la función JavaScript Math.round()).
Parámetros
- value: Valor decimal del cual se realizará la operación de redondeo
Ejemplo
var decVal = $form.getValue('/my:myFields/my:decimalField');
var intRound = round(decVal);
jQuery.alert('Nearest integer of ' + decVal + ' is: ' + intRound);
starts_with(text,find_text)
Devuelve true si la cadena especificada con text empieza por la cadena especificada en el parámetro find_text. De lo contrario, devuelve false.
Parámetros
- text: Cadena de la cual se va realizar la búsqueda
- find_text: Cadena que se va a buscar al inicio del parámetro «text»
Ejemplo
if (starts_with($form.getValue('/my:myFields/my:field_1', 'Prefix')) {
jQuery.alert('The field does begin with the string Prefix');
}
string(value)
Devuelve un valor como una cadena.
Parámetros
- value: Cualquier objeto de JavaScript que se convertirá en una cadena
Ejemplo
var currentTime = now();
var stringVal = string(currentTime);
jQuery.alert('string value of currentTime is: '+stringVal);
string_length(value)
Devuelve un entero que contiene la longitud de caracteres de una cadena especificada por un valor.
Parámetros
- value: Cadena de JavaScript de la cual se va a obtener la longitud
Ejemplo
var slen = string_length($form.getValue('/my:myFields/my:field_1');
jQuery.alert('Length of field_1 is: '+slen);
substring(text,pos,count)
Devuelve los caracteres de una cadena que empieza en la ubicación especificada (pos) hasta el número de caracteres especificado (count) (consulte la función JavaScript String.prototype.substr()).
Parámetros
- text: Cadena de la que se va a recuperar una subcadena
- pos: Posición de inicio de la subcadena (Nota: El primer carácter de una cadena se encuentra en la posición 0)
- count (opcional): Longitud de la subcadena (si no se ha especificado, devuelve todos los caracteres siguientes al valor de pos)
Ejemplo
var substr = substring($form.getValue('/my:myFields/my:field_1', 5);
jQuery.alert('substring of field_1,5 is: '+substr);
substring_after(text,find_text)
Devuelve todos los caracteres de una cadena posteriores a la cadena find_text. Si no se encuentra find_text en la cadena, esta función devuelve la cadena completa especificada por text.
Parámetros
- text: Cadena de la que se obtendrá la subcadena
- find_text: Cadena que se buscará en el parámetro «text»
Ejemplo
var substrAfter = substring_after($form.getValue('/my:myFields/my:field_1', 'Needle');
jQuery.alert('substring after Needle of field_1 is: '+substrAfter);
substring_before(text,find_text)
Devuelve todos los caracteres de una cadena anteriores a la cadena find_text. Si no se encuentra find_text en la cadena, esta función devuelve la cadena completa especificada por text.
Parámetros
- text: Cadena de la que se obtendrá la subcadena
- find_text: Cadena que se buscará en el parámetro «text»
Ejemplo
var substr = substring_before($form.getValue('/my:myFields/my:field_1', 'Needle');
jQuery.alert('substring before Needle of field_1 is: '+substr);
sum(field)
Devuelve la suma de valores numéricos de un grupo de repetición vinculado al campo especificado.
Parámetros
- field: XPath de un campo numérico de un grupo de repetición
Ejemplo
var total = sum('/my:myFields/my:Repeating_Table_2/my:Repeating_Content/my:SubTotal');
jQuery.alert('Total is: '+total);
today()
Devuelve un objeto de fecha que contiene el día actual con la hora establecida en 00:00:00.000.
Parámetros
Ninguno
Ejemplo
var todaysDate = today();
jQuery.alert('Today is: ' + date);
toLowerCase(text)
Cambiará todos los caracteres de «text» a minúsculas.
Parámetros:
- text: Cadena que se cambiará a minúsculas
Ejemplo:
Para cambiar automáticamente un campo de entrada a minúsculas:
$form.setValue('/my:myFields/my:field_1',toLowerCase($form.getValue('/my:myFields/my:field_1')));
toUpperCase(text)
Cambiará todos los caracteres de «text» a mayúsculas.
Parámetros
- text: Cadena que se cambiará a mayúsculas
Ejemplo
Para cambiar automáticamente un campo de entrada a mayúsculas:
$form.setValue('/my:myFields/my:field_1',toUpperCase($form.getValue('/my:myFields/my:field_1')));
translate(text,find_text,replace_text)
Devuelve una nueva cadena tras sustituir todas las apariciones de find_text por replace_text en el texto de la cadena.
Parámetros
- text: Valor de la cadena original
- find_text: Subcadena que se va a buscar en la cadena original
- replace_text: Subcadena con la que se substituirán las apariciones de find_text
Ejemplo
var modified = translate($form.getValue('/my:myFields/my:field_1'), 'this', 'that');
$form.setValue('/my:myFields/my:field_2', modified);