繁体   English   中英

在JavaScript中获取选定的单选按钮

[英]Getting selected radio button in JavaScript

在实际提出这个问题之前,我已经在这里尝试了很多解决方案,但是没有一个对我有用。

我试图使用onclick处理程序,试图通过输入名称获取,尝试getElementId ,尝试elementClassName我也试图循环它们var i = 0, length = radios.length; i < length; i++ var i = 0, length = radios.length; i < length; i++ var i = 0, length = radios.length; i < length; i++没有为我工作!

逻辑

  1. 我的单选按钮将基于ajax动作追加到视图
  2. 我选择任何一个单选按钮
  3. 我想获取此选定单选按钮的值

这就是我的收音机的附加内容,使I made it short to be clean and easy to read

success:function(data) {
        $('.shipoptions').empty();
        $('.shipoptionstitle').empty();
        $('.shipoptionstitle').append('<h6>Select your preferred method</h6>');
        $.each(data.data, function(key, value) {
          $.each(value.costs, function(key2, value2) {
            $.each(value2.cost, function(key3, value3) {
              // number format
              var number = value3['value'];
              var nf = new Intl.NumberFormat('en-US', {
                  maximumFractionDigits:0, 
                  minimumFractionDigits:0
              });
              var formattedNumber = nf.format(number);
              // number format
              $('.shipoptions').append('<ul class="list-form-inline"><li><label class="radio"><input type="radio" name="postchoose" data-code="'+value['code']+'" data-service="'+value2['service']+'" value="'+ value3['value'] +'"><span class="outer"><span class="inner"></span></span>'+ value['code'] + ' - ' + value2['service'] + ' - Rp ' + nf.format(number) + ' - ' + value3['etd'] +'</label></li></ul>');
            });
          });
        });
} //success function ends here

现在,我想获取data-codedata-servicevalue选定单选按钮value

对于临时人员,请帮助我在控制台中获取这些值,稍后我将自己修复打印部件。

任何想法?

<input type="radio" name="postchoose" data-code="'DC11'" data-service="'DS22'" value="'V33">

var dataCode = $('input[name="postchoose"]:checked').data('code');
var dataService = $('input[name="postchoose"]:checked').data('service');

var selectedVal= $("input:radio[name=postchoose]:checked").val();

解决了

$(function() {
        $(".shipoptions").on('change', function(){
            var radioValue = $("input[name='postchoose']:checked");
            if(radioValue){
                var val = radioValue.val();
                var code = radioValue.data('code');
                var service = radioValue.data('service');
                alert("Your are a - " + code + "- " +service+ "- " +val);
            }
        });
    });

我需要获得更高级别的单选按钮.shipoptions

试试这个jQuery方法。

$("input[type='radio']").click(function() {
 var radioValue = $("input[name='postchoose']:checked").val();
 var dataCode = $("input[name='postchoose']:checked").attr('data-code');
 var dataService = $("input[name='gender']:checked").attr('data-service');
 console.log(dataCode);
 console.log(dataService);
 console.log(radioValue);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM