JavaScript - Cambiar valor de dígito y operar

 
Vista:

Cambiar valor de dígito y operar

Publicado por Cristina (12 intervenciones) el 25/01/2021 13:14:55
Hola a todos,
Tengo un cuestionario de preguntas desarrollado de la siguiente forma. Los valores se guardan 1=1, 2=2, 3=3, 4=4, 5=5. El primer problema consiste en insertar nuevos valores en db las siguientes transformaciones. Cuando una persona selecciona la opción 1,se debe insertar en db el valor 5. Los resultados quedarían así: 1=5, 2=4, 3=3, 4=2, 5=1. En db el nuevo valor se guardaría PR1X.
El siguiente problema sería sumar variables, es decir, PR1X + PR2X.
Gracias.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<script>
    function resultadosCuestionario() {
        if (validarCuestionario()) {
    $.ajax({
        url: 'url',
        type: 'POST',
        data: {
            PR1: document.querySelector('input[name="preg1"]:checked').value,
            PR2: document.querySelector('input[name="preg2"]:checked').value,
            PR3: document.querySelector('input[name="preg3"]:checked').value,
            PR4: document.querySelector('input[name="preg4"]:checked').value,
            PR5: document.querySelector('input[name="preg5"]:checked').value,
                  },
        success: function (respuesta) {
                console.log(respuesta.message)
                if (respuesta.message.affectedRows > 0) {
                     console.log("Los datos se han enviado")
                     window.location.href = "#";
                } else {
                    console.log("Faltan datos por introducir")
                }
            },
            error: function () {
                alert("No es posible completar la operación");
            }
                });
            }
        }
 
</script>
 
<label>1.</span> XXXXXXXXXX.</label>
 <div class="respuestas">
      <input type="radio" name="preg1" value="1"/>1
      <input type="radio" name="preg1" value="2"/>2
      <input type="radio" name="preg1" value="3"/>3
      <input type="radio" name="preg1" value="4"/>4
      <input type="radio" name="preg1" value="5"/>5
</div>
 
resultadosCuestionario: (req, res) => {
 
        console.log(req.body)
        try {
            const db = dbConnection();
            db.connect(function (err) {
                if (err) throw err;
                var insert = " INSERT INTO xxxxx (PR1, PR2, PR3, PR4, PR5) VALUES ('" +req.body.PR1+ "', '" +req.body.PR2+ "', '" +req.body.PR3+ "', '" +req.body.PR4+ "', '" +req.body.PR5+ "');
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Cambiar valor de dígito y operar

Publicado por joel (895 intervenciones) el 25/01/2021 18:30:02
Hola Cristina, creo que te has dejado una parte del código por copiar... puedes poner el código entero?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cambiar valor de dígito y operar

Publicado por Cristina (12 intervenciones) el 25/01/2021 18:49:43
Buenas tardes Joel,
Gracias por contestar, había pegado lo imprescindible del código, no sé que parte puede faltar. De todas formas lo vuelvo a copiar. Necesito saber cómo puedo operar con las variables, desconozco los procedimientos descritos anteriormente. Cambiar el valor del dígito, es decir, cuando un usuario marque en el cuestionario 1 insertar el valor 5 en db. Posteriormente, las sumas de variables.
¡Muchas gracias!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<script>
    function resultadosCuestionario() {
        if (validarCuestionario()) {
    $.ajax({
        url: 'url',
        type: 'POST',
        data: {
            PR1: document.querySelector('input[name="preg1"]:checked').value,
            PR2: document.querySelector('input[name="preg2"]:checked').value,
            PR3: document.querySelector('input[name="preg3"]:checked').value,
            PR4: document.querySelector('input[name="preg4"]:checked').value,
            PR5: document.querySelector('input[name="preg5"]:checked').value,
                  },
        success: function (respuesta) {
                console.log(respuesta.message)
                if (respuesta.message.affectedRows > 0) {
                     console.log("Los datos se han enviado")
                     window.location.href = "#";
                } else {
                    console.log("Faltan datos por introducir")
                }
            },
            error: function () {
                alert("No es posible completar la operación");
            }
                });
            }
        }
 
</script>
 
<label>1.</span> XXXXXXXXXX.</label>
 <div class="respuestas">
      <input type="radio" name="preg1" value="1"/>1
      <input type="radio" name="preg1" value="2"/>2
      <input type="radio" name="preg1" value="3"/>3
      <input type="radio" name="preg1" value="4"/>4
      <input type="radio" name="preg1" value="5"/>5
</div>
 
resultadosCuestionario: (req, res) => {
 
        console.log(req.body)
        try {
            const db = dbConnection();
            db.connect(function (err) {
                if (err) throw err;
                var insert = " INSERT INTO xxxxx (PR1, PR2, PR3, PR4, PR5) VALUES ('" +req.body.PR1+ "', '" +req.body.PR2+ "', '" +req.body.PR3+ "', '" +req.body.PR4+ "', '" +req.body.PR5+ "');
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cambiar valor de dígito y operar

Publicado por Cristina (12 intervenciones) el 26/01/2021 12:04:49
Hola, respecto al insertar un valor distinto al marcado, podría ser un script en el que el código sea:

function cambiarValor{

1
2
3
4
if (PR1=== '1'){
PR1X='5';
} else if (PR1==='2'){
PR1X='4';

O algo parecido al código descrito, desconozco el procedimiento.
¡Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar