Як атрымаць значэнне кнопкі радыё з дынамічна генераваных імем

У мяне ёсць цэлая куча перамыкачоў з дынамічна генераваных такімі імёнамі, як паказана ніжэй:

        <input type="radio" id="Red<?php echo $wineID; ?>" name="category<?php echo $wineID; ?>" value="Red" <?php if ($category == "Red") { ?>checked="true"<?php } ?>>
          

        <input type="radio" id="White<?php echo $wineID; ?>" name="category<?php echo $wineID; ?>" value="White" <?php if ($category == "White") { ?>checked="true"<?php } ?>>
          

        <input type="radio" id="Sparkling<?php echo $wineID; ?>" name="category<?php echo $wineID; ?>" value="Sparkling" <?php if ($category == "Sparkling") { ?>checked="true"<?php } ?>>
          

Мне трэба, каб атрымаць абранае значэнне і дадаць яго ў мой dataString для AJAX выкліку, каб абнавіць сваю базу дадзеных. Як гэта можна зрабіць з дапамогай JQuery?

3

8 адказы

Паспрабуйце гэта:

$('input[type="radio"]:checked')

як ў:

alert( $('input[type="radio"]:checked').val() );
2
дададзена
Гэта спрацавала. Дзякуй вялікі!
дададзена аўтар Daniel Young, крыніца

Паспрабуйце гэта:

$('input[type="radio"]:checked')

як ў:

alert( $('input[type="radio"]:checked').val() );
2
дададзена
Гэта спрацавала. Дзякуй вялікі!
дададзена аўтар Daniel Young, крыніца

Вы можаце выкарыстоўваць селектар атрыбуту, каб атрымаць элемент

$('input[name="category<?php echo $wineID; ?>:selected"')

Аднак гэта выкарыстоўвае PHP инлайн-скрыпт, так што ён будзе працаваць толькі тады, калі аказваецца на старонцы загрузкі.

Ці прасцей за ўсё было б:

console.log($(":radio:selected").val());
1
дададзена

Вы можаце выкарыстоўваць селектар атрыбуту, каб атрымаць элемент

$('input[name="category<?php echo $wineID; ?>:selected"')

Аднак гэта выкарыстоўвае PHP инлайн-скрыпт, так што ён будзе працаваць толькі тады, калі аказваецца на старонцы загрузкі.

Ці прасцей за ўсё было б:

console.log($(":radio:selected").val());
1
дададзена

Вы можаце атрымаць імя атрыбуту з OnChange падзея (з дапамогай JQuery)

// Onload handler
$(function() {
   //Get all radio buttons and add an onchange event
    $("input[type=radio]").on("change", function(){
       //Output a message in the console which shows the name and state
        console.log($(this).attr("name"), $(this).is(":checked"));

   //Trigger the onchange event for any checked radio buttons after the onload event has fired
    }).filter(":checked").trigger("change");
});
1
дададзена

Вы можаце атрымаць імя атрыбуту з OnChange падзея (з дапамогай JQuery)

// Onload handler
$(function() {
   //Get all radio buttons and add an onchange event
    $("input[type=radio]").on("change", function(){
       //Output a message in the console which shows the name and state
        console.log($(this).attr("name"), $(this).is(":checked"));

   //Trigger the onchange event for any checked radio buttons after the onload event has fired
    }).filter(":checked").trigger("change");
});
1
дададзена

you can use a parent div with id="anything"

now using jQuery selector $('#anything input[type="radio"]:checked').val()

Вы можаце дамагчыся таго, што

0
дададзена

you can use a parent div with id="anything"

now using jQuery selector $('#anything input[type="radio"]:checked').val()

Вы можаце дамагчыся таго, што

0
дададзена