J'essaie de convertir des boîtes de sélection à des boutons radio à la volée en utilisant jquery, et je ne suis pas sûr de la meilleure façon.jQuery Convert Sélectionnez les boutons radio?
Exemple HTML:
<form id="product">
<select name="data[123]">
<option value="1">First</option>
<option value="2">Second</option>
......
<option value="n">xxxxxx</option>
</select>
</form>
Je veux convertir au chargement de la page en utilisant jquery à:
<form id="product">
<input type="radio" name="data[123]" value="1" />
<label for="data[123]">First</label><br/>
<input type="radio" name="data[123]" value="2" />
<label for="data[123]">Second</label><br/>
......
<input type="radio" name="data[123]" value="n" />
<label for="data[123]">xxxxxx</label><br/>
</form>
Et il doit être dynamique il bouclera dynamiquement pour chaque zone de sélection et chaque option à l'intérieur (comme différents produits ont des options différentes)
J'essaie de trouver la meilleure façon. Soit pour obtenir un tableau multidimensionnel de toutes les valeurs, puis pour construire les boutons radio .. ou les échanger un à la fois dans une boucle. tente actuellement l'ancien, mais je pense que je suis Overthinking il:
$(document).ready(function(){
//Get Exising Select Options
$('form#product select').each(function(i, select){
$(select[i]).find('option').each(function(j, option){
//alert($(option).text());
option[j] = [];
option[j]['text'] = $(option).text();
option[j]['val'] = $(option).val();
});
});
//Remove Select box
$('form#product select').remove();
});
Quelqu'un at-il essayé ou avoir un moyen secret/plus facile de le faire que je suis absent?
Pourquoi les -1? C'est un exemple de code de travail ... – gnarf
C'est parfait! Merci à vous deux! – Dss
merci mais les clics d'étiquette ne fonctionnent pas remplacer deux lignes 1: ** '$ radio.attr ('nom', $ select.attr ('nom')). Attr ('id', $ option.val()); '** 2. **' $ ("") .attr ('pour', $ option.attr ('valeur')). Text ($ option.text()) ); '** – John