J'essaie de personnaliser ma boutique basée sur prestashop avec une nouvelle fonctionnalité, et je suis coincé. J'ai une sélection de méthodes de paiement radio générée par JS, mais je n'arrive pas à comprendre comment faire pour que le premier (i = 0) soit coché par défaut. Les méthodes de paiement sont numérotées et la première est i = 0. J'ai essayé if (i == 0) {'checked="checked"' }
mais je ne fonctionne pas.JS généré radio sélection- comment faire la première position par défaut
Voici le code qui génère les méthodes de paiement:
$('.payment_module').each(function(i)
{
var a = $(this).find('a');
html += '<table class="resume table table-bordered'+(currentPaymentMethod == a.attr('href') ? ' selected' : '')+'"><tr>';
html += '<td class="td1_payment"><input type="radio" name="id_method_paymend" id="payment_method_id_'+i+'" '+(currentPaymentMethod == a.attr('href') ? : '')+' value="'+i+'" class="wysylka_w_payment" data-href='+a.attr('href') if (i == 0) {'checked="checked"' }+' /></td>';
var img = $(this).find('a').css('background-image').replace(/.*\s?url\([\'\"]?/, '').replace(/[\'\"]?\).*/, '');
html += '<td class="td2_payment"><label for="payment_method_id_'+i+'" class="img_w_payment"><img src="'+img+'" alt="" /></label></td>';
//$(this).find('img').remove();
html += '<td class="td3_payment"><label for="payment_method_id_'+i+'" class="opis_w_payment">'+a.html()+'</label></td>';
html += '</tr></table>';
$(this).attr('id', 'payment_method_'+i+'');
});
Des idées? Je suppose que la solution pourrait être simple, mais je ne connais pas très bien JS.
Merci pour la réponse, maintenant je comprends plus de ce que je lis. Je l'ai fait comme tu l'as suggéré, mais ça ne marche toujours pas. Je vais continuer à essayer, peut-être que je vais comprendre. Il semble qu'il y ait un intervalle sur le site final qui a changé les classes pour "vérifié" quand j'ai choisi une méthode de paiement mais je ne peux pas sembler comprendre d'où vient-il. – DRPC