English 中文(简体)
I want a function to be fired whenever one option of a radio element is checked. How to do it using Jquery?
原标题:

There are many input radio elements on a web page and each radio element has several options. I want a function to be fired whenever one option of a radio element is checked. How to write the code using Jquery? One input element looks as follows:

<div class="below">
<input type="radio" value="information" name="option0"/>
information
<input type="radio" value="communication" name="option0"/>
communication
<input type="radio" value="goods" name="option0"/>
goods
<input type="radio" value="attention" name="option0"/>
attention
</div>

I wrote the code as follows:

$(":radio").checked(function() {
    alert(this.value);

});

But it doesn t work. How to do it?

问题回答

checked is not an event, you should use click or change.

Also I want to notice that is recommended to use input:radio instead of only :radio, because that pseudo-selector will be evaluated as *:radio and it can be quite slow:

$( input:radio ).click(function () {
  if (this.checked) { // or $(this).attr( checked )
    alert(this.value); // or alert($(this).val());
  }
});

Try:

$( :radio ).click(function(evt){
    if ($(this).attr( checked ))
    {
        alert($(this).val());
    }
});

This example should do exactly what you want, but here is a synopsis:

$( input[type=radio] ).change(function (event) {
  if (this.checked) {
    alert( Value "  + this.value +  " from option group "  + this.name  " was selected. );
  }
});

Explanation:

  1. $( input[type=radio] ) selects all radio buttons.
  2. .change() sets the event handler for the change event. There is no "checked" event.
  3. this.checked is true if the radio box is checked; false if not. The event will fire not only for the option that was just checked, but also the one that was just unchecked as well.
  4. this.value gives the value for the input.
  5. this.name gives the name of the option group.

I think something like this should do it.

$("input:checked").each(function(){
 alert($(this).val());
}




相关问题
getGridParam is not a function

The HTML: <a href="javascript:void(0)" id="m1">Get Selected id s</a> The Function: jQuery("#m1").click( function() { var s; s = jQuery("#list4").getGridParam( selarrrow )...

selected text in iframe

How to get a selected text inside a iframe. I my page i m having a iframe which is editable true. So how can i get the selected text in that iframe.

jQuery cycle page with links

I am using the cycle plugin with pager functionality like this : $j( #homebox ) .cycle({ fx: fade , speed: fast , timeout: 9000, pager: #home-thumbs , ...

jquery ui dialog opens only once

I have a button that opens a dialog when clicked. The dialog displays a div that was hidden After I close the dialog by clicking the X icon, the dialog can t be opened again.

jConfirm with this existing code

I need help to use jConfirm with this existing code (php & Jquery & jAlert). function logout() { if (confirm("Do you really want to logout?")) window.location.href = "logout.php"; } ...

Wrap text after particular symbol with jQuery

What I m trying to do, is wrap text into div inside ll tag. It wouldn t be a problem, but I need to wrap text that appears particularly after "-" (minus) including "minus" itself. This is my html: &...

热门标签