- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nel mio modulo di pagamento personalizzato, ho inserito alcuni radio bottons.
Però, quando provo a cliccarci, questi sono disabilitati. Come si attivano?
Ecco il codice:
<?php$question = Mage::getModel('emme_question/question')->getCollection()->getLastItem(); $answers = $question->getSelectedAnswersCollection(); ?> <h4><?php echo $this->escapeHtml($question->getValue()); ?></h4> <ul> <?php foreach ($answers as $answer): ?> <li> <label><?php echo $this->escapeHtml($answer->getValue()) ?></label> <input type="radio" name="my_custom_answer" value="<?php echo $answer->getId() ?>" required> </li> <?php endforeach ?>
Solved! Go to Solution.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ho risolto
<?php $question = Mage::getModel('emme_question/question')->getCollection()->getLastItem(); $answers = $question->getSelectedAnswersCollection(); ?> <div id="custompaymentmethod-question"> <h4><?php echo $this->escapeHtml($question->getValue()); ?></h4> <ul> <?php foreach ($answers as $answer): ?> <li> <label><?php echo $this->escapeHtml($answer->getValue()) ?></label> <input type="radio" name="my_custom_answer" value="<?php echo $answer->getId() ?>" required> </li> <?php endforeach ?> </div> <script> jQuery(function ($) { $('#co-payment-form').on('change.mm', function () { var is_question_active = ! $('#p_method_custompaymentmethod').is(':checked'); $('#custompaymentmethod-question input').attr('disabled', is_question_active); }) }) </script>
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Radio botton
Ciao, ad un'occhiata rapida non mi pare che ci sia nulla nel tuo codice che disabiliti le opzioni, quindi penso che la disabilitazione venga fatta da qualche javascript nella pagina.
Se vuoi un suggerimento però evita di inserire della logica nel template perché è una pessima pratica. Di solito il caricamento di una collezione è bene che sia gestito a livello di blocco per mantenere un'indipendenza del phtml.
// Converting code to business
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Radio botton
Ciao pvecchio, ti ringrazio in anticipo per la risposta e i consigli.
Non ho ben capito:
- Come posso verificare che la disabilitazione venga fatta da qualche javascript nella pagina?
- Mi hai consigliato di evitare di inserire della logica nel template perché è una pessima pratica. Cosa intendi?
Ti ringrazio ancora per l'aiuto e per la pazienza.
Grazie.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ho risolto
<?php $question = Mage::getModel('emme_question/question')->getCollection()->getLastItem(); $answers = $question->getSelectedAnswersCollection(); ?> <div id="custompaymentmethod-question"> <h4><?php echo $this->escapeHtml($question->getValue()); ?></h4> <ul> <?php foreach ($answers as $answer): ?> <li> <label><?php echo $this->escapeHtml($answer->getValue()) ?></label> <input type="radio" name="my_custom_answer" value="<?php echo $answer->getId() ?>" required> </li> <?php endforeach ?> </div> <script> jQuery(function ($) { $('#co-payment-form').on('change.mm', function () { var is_question_active = ! $('#p_method_custompaymentmethod').is(':checked'); $('#custompaymentmethod-question input').attr('disabled', is_question_active); }) }) </script>