New question

Question:

Date: 07-02-2019 12:48:16 (In Spanish)

Ayuda: Cómo pasar el value de un radio a otro template[Unresolved]

Hola!

Estoy un poco encallado, y no se como pasar el value de un radio de un template a otro, pongo un ejemplo:

Si estoy en el template_01.php con el siguiente código:

 <div><label><?php _e('Fee', 'crtheme'); ?></label></div>
                        <?php $first_fee = true; ?>
                        <?php foreach ($apartment->prices as $fee_type => $fee_info): ?>
                            <div class="radio">
                                <label><input type="radio" name="fee" data-price="<?php echo $fee_info->price; ?>" value="<?php echo $fee_type ?>" required <?php echo ($first_fee ? 'checked' : ''); ?>><?php echo $fee_type ?> (<?php echo $fee_info->price; ?> &euro;)
                                    <?php if (ICL_LANGUAGE_CODE == 'es'): ?>
                                        <a href="#" data-toggle="tooltip" title="<?php echo $fee_info->description_es; ?>"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
                                    <?php elseif (ICL_LANGUAGE_CODE == 'en'): ?>
                                        <a href="#" data-toggle="tooltip" title="<?php echo $fee_info->description_en; ?>"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
                                    <?php endif; ?>
                                </label>
                            </div>
                            <?php $first_fee = false; ?>
                        <?php endforeach; ?>
                    </div>


He marcado en negrita el input, tiene 2 valores, A, B, quiero poder recuperar el value seleccionado para pintarlo en el template_02.php

Para poderlo hacer, tendria que utilizar algo así como: file_get_content = url del template_01.php ??

Está claro que no es un secillo
$_GET['fee']
ya que en éste caso lo que haríamos seria recuperar el valor del check, pero yo no quiero el valor sino el value del radio, me explico mejor.

el radio se llama A y si se selecciona es = si, y el otro radio B si se selecciona es = no, no quiero recuperar el si o el no quiero recuperar el A o el B.

Espero que me haya explicado con claridad, y pueda alguien darme un punto de luz, gracias!!

Un saludo!
Tags: $_SESSION - HTML - Javascript - Laravel - PHP - PHP Advanced - WordPress Votes: 0 - Answers: 3 - Views: 12 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 07-02-2019 15:32:26 Hola Litulandio,
    Está confusa tu pregunta y proporcionas muy poca información.
    Quiero pensar que estás haciendo un template en Wordpress. Es correcto?

    Ahora bien, en tu pregunta mencionas que si usas:

    $_GET['fee']
    


    No sirve porque obtienes el valor del check y no del radio.

    No veo ningún checkbox en el código que proporcionas pero si ambos tienen el mismo atributo name puede ser que ese sea el problema.

    Ahora bien vamos al caso más sencillo.

    <input type="radio" name="fee" data-price="10.00" value="fee_type_1" required> A
    <input type="radio" name="fee" data-price="17.00" value="fee_type_2" required checked> B
    


    Si hemos seleccionado B entonces al enviar la forma, si utilizas $_GET['fee'], recibirás el valor fee_type_2.
    Supongo que además de recibir el valor quieres retroalimentar al cliente con una respuesta tipo:

    Usted seleccionó la opción B

    Es correcto?
      Votes: 0 - Link answer
     
  • Date: 07-02-2019 19:49:26 Si, es correcto, estoy trabajando con una plantilla wordpress personalizada, i si, como bien dices quiero ver la selección B en otro template, queria saber que

    1- para ver en otra template esa selección como hacer de puente.

    2- para ver la selección de ese input que es dinámico pasado por in foreach, como hago para diferenciarlo? Y capturar su valor?

    Muchas gracias
      Votes: 0 - Link answer
     
  • Date: 08-02-2019 06:22:56 Ok,
    Hay varias formas pero las más sencillas serían:
    1. Incluir en tu forma un input oculto que se actualizará con el label del radio que seleciones mediante un evento (Generalmente click). De esta manera se envía como parte de tu formulario.

    Este ejemplo te puede servir:
    <label for="animalCats">Cats:</label>  <input name="animal" id="animalCats" type="radio" value="Cats" checked>
    <label for="animalDogs">Dogs:</label>  <input name="animal" id="animalDogs" type="radio" value="Dogs">
    
    <p>Click the button to check all checkboxes that have a name attribute with the value "animal".</p>
    
    <button onclick="myFunction()">Try it</button>
    <input type="hidden" name="radioLabel" value=""/>
    <script>
    function updateHiddenField() {
    	var x = document.querySelector("input[name=animal]:checked");
        var label = document.querySelector("label[for=" + x.id + "]");
        var hiddenInput = document.querySelector("input[name=radioLabel]");
        hiddenInput.value=label.innerText;
    }
    
    var elements = document.getElementsByName("animal");
    for (i = 0; i < elements.length; i++) {
    	elements[i].addEventListener("click", updateHiddenField);
    }
    </script>
    


    2. Si el label está asociado con el valor de alguna manera en el backend entonces cuando recibas el valor puedes recuperar el label a partir del valor recibido.
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In
 
frjcbbae garagebible.com