1

jqueryでラジオボタンを選択ボックスに変換する必要があります。

次のコードがありますが、必要なものが生成されません。

$j('#product_addtocart_form input[type=radio]').each(function(i, checkbox){
var $checkbox = $j(checkbox);
// create a select
var $select = $j('<select></select>');
// set name and value
$select.attr('name', $checkbox.attr('name')).attr('value', $checkbox.val());
$select.append(new Option('test','tet'));
//$checkbox.remove();
});
4

1 に答える 1

9

$select毎回ループ内を再作成しています。また、$selectブラウザに書き出されることはありません。

これを試して:

var $checkbox = $('#product_addtocart_form input[type=radio]');
var $select = $('<select></select>');    // create a select
$select.attr('name', $checkbox.attr('name'));    // set name and value

$checkbox.each(function(i, checkbox){
    var str = $checkbox.eq(i).val();
    $select.append($('<option>').val(str).text(str));
});

$checkbox.replaceWith($select);​

http://jsfiddle.net/mblase75/G9fHG/

于 2012-12-11T19:10:27.850 に答える