Estoy intentando convertir cuadros de selección en botones de radio sobre la marcha usando jquery, y no estoy seguro de la mejor manera.jQuery Convert Seleccione los botones de Radio?
Ejemplo 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>
Quiero convertirlo en carga de la página usando jQuery para:
<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>
Y tiene que ser dinámico por lo que se repetirá de forma dinámica para cada cuadro de selección y cada opción dentro (como diferentes productos tienen diferentes opciones)
Estoy tratando de encontrar la mejor manera. Ya sea para obtener una matriz multidimensional de todos los valores primero y luego construir los botones de radio ... o cambiarlos de uno en uno en un bucle. Actualmente intentar la antigua, pero creo que se me puede pensar demasiado que:
$(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();
});
Alguien ha probado esto o tener algún secreto manera/más fácil de hacerlo que me falta?
¿Por qué el -1? Es un ejemplo de código de trabajo ... – gnarf
¡Esto es perfecto! ¡Gracias a los dos! – Dss
gracias pero los clics en la etiqueta no funcionan reemplazan dos líneas 1: ** '$ radio.attr ('nombre', $ select.attr ('nombre')). Attr ('id', $ option.val()); '** 2. **' $ ("") .attr ('for', $ option.attr ('value')). Text ($ option.text()) ); '** – John