0

問題:

注文に基づいて送信されたラジオ ボタンを特定し、PHP で値を送信します。

HTML テーブル 1 コード:

<table class="table table-bordered neutralize" id="itembuttons">
    <thead>
        <tr>
            <th><input type="radio" name="3" id="3" value="6"></th>
            <th><input type="radio" name="3" id="3" value="7"></th>
            <th><input type="radio" name="3" id="3" value="8"></th>
            <th><input type="radio" name="3" id="3" value="9"></th>
            <th><input type="radio" name="3" id="3" value="10"></th>
        </tr>
    </thead>
</table>

HTML テーブル 2 コード:

<table class="table table-bordered neutralize" id="itembuttons">
    <thead>
        <tr>
            <th><input type="radio" name="3" id="3" value="11"></th>
            <th><input type="radio" name="3" id="3" value="12"></th>
            <th><input type="radio" name="3" id="3" value="13"></th>
        </tr>
    </thead>
</table>

シナリオ:

上記のコードは、表 1 では 6 から 10、表 2 では 11 から 13 の間の値を持つ "3" という名前の PHP の POST 変数を生成します。たとえば、3 番目のボタン (値 = 8 または値 = 13)) を選択すると、非表示の入力フィールドに値 3 が送信されます。5 番目のボタンが選択された場合 (値 = 10)、非表示の入力フィールドに値 5 が送信されます。

4

3 に答える 3

1

これを試してください - http://jsfiddle.net/Xa42c/

$("input[type=radio]").on("click", function(e) {
    $("input[type=hidden]").val( $(this).val() );

    alert( "Hidden field value is set to " + $(this).val() );
});​

id-sは必要ないことに注意してください。ただし、それらを使用する場合は、一意でなければなりません

UPDATEポジションを取得するにはindex()- http://jsfiddle.net/Xa42c/2/

$("input[type=radio]").on("click", function(e) {
    var index = $("input[type=radio]").index(this) + 1;
    $("input[type=hidden]").val( index );

    alert( "Hidden field value is set to " + index );
});​
于 2012-06-09T11:22:31.130 に答える
0

最終的解決:

$(document).ready(function() {
    $('input[type=radio]', $('#itembuttons')).click(
        function() {
            var pos = $(this).parent().index() + 1;
            $('#hdnQuestion').val(pos);
            alert( 'The ' + $('#hdnQuestion').attr('name') + ' value is now ' + $('#hdnQuestion').val() );
        }
    );
});
于 2012-06-09T18:13:07.910 に答える
0

コードの問題は、ID が一意でないことです。それらを変更してみてください。一般的な名前が必要な場合は、テーブルに name 属性を使用できます。

于 2012-06-09T11:20:27.403 に答える