Pregunta sobre Calculated Fields Form de Wordpress:

Restablecer campos por defecto (valores de ocupante)

Un usuario preguntó 👇

Tengo un formulario sin muchos campos como entrada de datos. y el precio total se calcula sobre la base de la selección de unas pocas áreas (producto y cantidad). Hay un botón «Agregar» que quiero usar para mostrar el texto integrado de los detalles del producto en un campo de texto determinado (nombre del campo 10) y restablecer todos los demás campos (excepto el nombre del campo 10).

Pregunta 1: cómo hacerlo: Con el clic de un botón, me gustaría hacer coincidir un nombre de campo text10 (campo de texto vacío) con los detalles del producto seleccionado con precio, cantidad y precio total.

Pregunta 2: En el mismo botón ‘Enviar’, necesito restablecer los campos del formulario (valores predeterminados definidos como ocupante) => Los campos son de tipo Número, Drop In.

PD: Soy nuevo en esta tecnología y plataforma, pero este plugin parece ser útil. en mi proceso de aprendizaje e investigación, por lo que no tengo un enlace a un sitio web.

(@codepeople)

Hace 1 año, 3 meses

Hola @sanadaniyal

Sus preguntas no son específicas sobre nuestro plugin, estos son conceptos básicos de HTML y JavaScript.

Primero, no puede usar el método de restablecimiento de formulario, porque no puede restringir el restablecimiento a ciertos campos solamente (el formulario se restablecerá en su totalidad). Entonces, la alternativa sería borrar los valores de los campos específicos solamente.

Suponiendo que los campos que van a unirse son: nombre de campo1, nombre de campo2 y nombre de campo3, y desea asignar el texto de integración al nombre de campo10 y, finalmente, borrar los valores de los campos: nombre campo1, nombre de campo2 y nombre de campo3

Definiré una función para reutilizar la funcionalidad con otras áreas si es necesario.

– Ingrese el campo «Contenido HTML» en el formulario con el siguiente fragmento de código como contenido:


<script>
function concatenate_and_reset(fields_list, result_field)
{
    var result = '';
    for(var i  in fields_list)
    {
       result += ' '+jQuery('[id*="'+fields_list[i]+'_"]').val();
       jQuery('[id*="'+fields_list[i]+'_"]').val('');
    }
    jQuery('[id*="'+result_field+'_"]').val(result);
}
</script>

Ahora solo debe llamar a la función anterior como el evento onclick del botón:


concatenate_and_reset(['fieldname1', 'fieldname2', 'fieldname3'], 'fieldname10');

como puede ver la función anterior asume dos parámetros, una lista con los nombres de los campos para integración y aclaración, y el nombre del campo en el que se asigna el texto de integración. Entonces, desde el evento onclick del botón, puede llamar a esta función con la lista de campos que necesita.

Todo lo mejor.

(@sanadaniyal)

Hace 1 año, 3 meses

Gracias por la satisfactoria respuesta.

Tengo una pregunta frente a mí. He pasado un campo de nombre form1. Tengo que usar su valor con la población en otras áreas de selección, así que elegí «Valor de elección» y eso funciona perfectamente en ese escenario. Ahora el problema está en el método concatenate_and_reset, uno de mis parámetros para concatenar es el nombre de campo text1 pero ejecutarlo por valor si solo paso el nombre de campo1. Cómo reenviar el texto de la selección del nombre feild1 pero no cambiar su propiedad a ‘Texto de elección’.

(@codepeople)

Hace 1 año, 3 meses

Hola @sanadaniyal

Las opciones “Elección de texto” y “Valor de opción” se refieren a la información a ingresar, pero en las ecuaciones se utilizan siempre los valores de las opciones, nunca sus textos.

Si desea seleccionar el texto de la opción seleccionada en el campo DropDown, por ejemplo, el texto de la opción seleccionada en el campo nombre1, la pieza de código que se usaría es:


jQuery('[id*="fieldname1_"] option:selected').text();

Si quieres integrarlo en el concatenate_and_reset rutina, el proceso sería como:


<script>
function concatenate_and_reset(fields_list, result_field)
{
    var result = '';
    for(var i  in fields_list)
    {
       if(jQuery('[id*="'+fields_list[i]+'_"]')[0].tagName == 'SELECT')
       {
           result += ' '+jQuery('[id*="'+fields_list[i]+'_"] option:selected').text();
       }
       else
       {
           result += ' '+jQuery('[id*="'+fields_list[i]+'_"]').val();
           jQuery('[id*="'+fields_list[i]+'_"]').val('');
       } 
    }
    jQuery('[id*="'+result_field+'_"]').val(result);
}
</script>

Lo sentimos, pero el servicio de soporte no cubre la implementación de proyectos de usuarios (formularios o fórmulas)

Todo lo mejor.

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada.