0

valueラベルの直前にある入力フィールドの属性の値をターゲットにしようとしていますclass="selected"

<div id="placeholder">
<div id="product-options" class="options">

    <input checked="checked" id="option_33295465" name="cart[add][id]" type="radio" value="33295465" class="input_hidden"/>
    <label for="option_33295465" class="selected">
        <span>option1</span>
    </label>

    <input id="option_33544344" name="cart[add][id]" type="radio" value="33544344" class="input_hidden"/>
    <label for="option_33544344">
        <span>option2</span>
    </label>

</div>
</div>

現時点では、値をログに記録しようとしていますが、毎回未定義になります。

$('body').on('click','#button1',function(e){
    e.preventDefault();
    $item = jQ('#placeholder').find('.selected').prev().attr('value');
    console.log($item); // Logs "undefined"
});

フィドル

4

2 に答える 2

1

あなたが探しているのは.val、要素の機能です。

もう 1 つは、オプション/ラジオ ボタンの値を取得するための jQuery コードを次のように簡略化できることです。

$('#product-options input:checked').val()
于 2013-05-04T14:49:12.270 に答える
0

jQuery には、フォーム入力の値を取得するための別のメソッドがあります: val()

$item = jQ('#placeholder').find('.selected').prev().val();

トリックを行う必要があります。ここも参照してください

于 2013-05-04T14:49:13.800 に答える