开发者

get radio box value in jquery

开发者 https://www.devze.com 2023-03-18 05:51 出处:网络
Am I under the wrong impression that jquery or JS can retrieve the values of radio buttons in a form? The reason i ask is because in my code the script i use to check for all fields in a form, does no

Am I under the wrong impression that jquery or JS can retrieve the values of radio buttons in a form? The reason i ask is because in my code the script i use to check for all fields in a form, does not seem to recognise the value in id="contact2" in the form, which is a radio group. I have posted my code at jsfiddle.net and would appreciate some feedback as to how I can correct this开发者_如何学C. Many thanks

Fiddle: http://jsfiddle.net/xGrb9/


You need to do it like this:

$('input:radio[name=bar]:checked').val();

Because of how radio buttons are checked/unchecked and their values are stored. (from the jQuery docs). You also need to make sure that the radio buttons have different IDs, which is a classic gotcha.

Finally, when testing if a radio button has not been selected at all, make sure to test against undefined and not an empty string for compatibility across browsers.

EDIT: looked at your code, and you need to do two things: 1. Change IDs of the buttons, to something like "contact2a" and "contact2b" so they are unique. 2. Change your var customer2 = line to var contact2=$("input[name=contact2]:checked").val();


Change this line:

 var contact2=$("#contact2").val();

to:

 var contact2=$('input[name="contact2"]:checked').val();

You need the checked because otherwise it finds both inputs.

Also, technically, all IDs should be unique, ie, not used on 2 elements on the page.


You should be able to use .val()

See this: http://api.jquery.com/val/


Both of your radio buttons have the same ID. That doesn't work in HTML. You'll have to refer to the buttons separately and select the one that is checked.


You can simply call

$("[name=contact2]:checked").val()
0

精彩评论

暂无评论...
验证码 换一张
取 消