繁体   English   中英

在jQuery中动态选择时如何获取单选按钮的名称和值?

[英]How to get the NAME and value of a radio button when DYNAMICALLY selected - in jQuery?

我这里有两组单选按钮,当它们被动态选择时,我想获取Name和Value属性的内容。 我确实得到了值属性的内容,但没有得到名称属性。 感谢您的帮助! 这是代码:

 var var1 = ""; function myFun(){ $( "input[type=radio]:checked" ).each(function(){ var1 = $(this).val(); alert(var1); }); } 
 <form> <h3>Fruits</h3> <div> <input type="radio" name="fruit" value="orange" id="orange"> <label for="orange">orange</label> </div> <div> <input type="radio" name="fruit" value="apple" id="apple"> <label for="apple">apple</label> </div> <div> <input type="radio" name="fruit" value="banana" id="banana"> <label for="banana">banana</label> </div> <h3>Delivery</h3> <div> <input type="radio" name="delivery" value="Y" id="y"> <label for="orange">Yes</label> </div> <div> <input type="radio" name="delivery" value="N" id="n"> <label for="apple">No</label> </div> <button onclick="myFun()">Submit</button> </form> 

您可以使用this.name获得name属性:

var var1 = "";
function myFun() {
    $("input[type=radio]:checked").each(function () {
        var1 = $(this).val();
        var2 = this.name;
        console.log(var1,var2);
    });
}

jsFiddle示例

嗯,这?

$(this).attr("name")

尝试这个:

 var var1 = ""; function myFun(){ $( "input[type=radio]:checked" ).each(function(){ var1 = $(this).val(); var2 = $(this).attr("name"); alert(var1); alert(var2); }); } 
 <form> <h3>Fruits</h3> <div> <input type="radio" name="fruit" value="orange" id="orange"> <label for="orange">orange</label> </div> <div> <input type="radio" name="fruit" value="apple" id="apple"> <label for="apple">apple</label> </div> <div> <input type="radio" name="fruit" value="banana" id="banana"> <label for="banana">banana</label> </div> <h3>Delivery</h3> <div> <input type="radio" name="delivery" value="Y" id="y"> <label for="orange">Yes</label> </div> <div> <input type="radio" name="delivery" value="N" id="n"> <label for="apple">No</label> </div> <button onclick="myFun()">Submit</button> </form> 

您还可以在用户单击或取消选中单选按钮后触发的更改事件上执行此操作,并且可以使用jquery .attr函数获取名称attr:

$('input[type=radio]').on('change', function() {
    var val = $(this).val();
    var name = $(this).attr('name');
});

您还可以通过单选按钮检查是否选中

if($(this).is(':checked')){
    console.log('is_checked');
}

暂无
暂无

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

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