1

我试图在 JQuery 中更改其选择时显示我的单选按钮值。但是,无论我为单选按钮分配什么值,它在我的警报框中只显示 0。我尝试了很多事情,但没有得到任何运气。

这是我的 Jquery 代码:

<script type="text/javascript">
$(function() {
      $("input[name='sec_officer']").change(function(){
        if ($("input[@name='sec_officer']:checked").val() == '5'){
          alert($("input[@name='sec_officer']:checked").val()); 
        } else 
            {alert($("input[@name='sec_officer']:checked").val()); }
      });
    });
</script>

这是我的 HTML 代码段:

<tr>
               <td>Security Officer oversight:</td>
               <td><input type="radio" name="sec_officer" id="sec_officer_no" value="5" checked="checked"/>
                No   <input type="radio" name="sec_officer" id="sec_officer_yes" value="6" />
                Yes</td>                
             </tr>

提前致谢!!!

4

4 回答 4

2

演示

$("input[@name='sec_officer']变成$("input[name='sec_officer']

删除@符号并且它有效

$(function () {
    $("input[name='sec_officer']").change(function () {
        if ($("input[name='sec_officer']:checked").val() == '5') {
            alert($("input[name='sec_officer']:checked").val());
        } else {
            alert($("input[name='sec_officer']:checked").val());
        }
    });
});

如果您只想提醒选定的值,您可以使用以下代码

$(function () {
    $("input[name='sec_officer']").change(function () {
        alert($("input[name='sec_officer']:checked").val());
    });
});

或者这个

$(function () {
    $("input[name='sec_officer']").change(function () {
        if($(this).is(':checked')){
            alert($(this).val());
        }
    });
});
于 2013-08-01T01:49:24.967 回答
2

被选中的元素就是这样返回的。所以你可以这样做。

  $("input[name='sec_officer']").change(function(){
    console.log($(this).val()); // Checked value
  })

编辑: Jsbin

  $("input[name='sec_officer']").change(function(){
    var value=$(this).val();
    if(value==5) console.log("You selected 5");
    else console.log("You selected " + value);
  });
于 2013-08-01T01:48:52.640 回答
1

我不知道为什么你有那些'@'符号,但没有它们它对我有用:

<script type="text/javascript">
$(function() {
      $("input[name='sec_officer']").change(function(){
        if ($("input[name='sec_officer']:checked").val() == '5'){
          alert($("input[name='sec_officer']:checked").val()); 
        } else 
            {alert($("input[name='sec_officer']:checked").val()); }
      });
    });
</script>
于 2013-08-01T01:48:47.447 回答
1

你能试试这个吗?我刚刚删除了 '@' 符号$("input[@name=。'@' 在那里不需要。

下面的代码在这里工作http://jsfiddle.net/E44JD/

<script type="text/javascript">
$(function() {
      $("input[name='sec_officer']").change(function(){
      if ($("input[name='sec_officer']:checked").val() == '5'){
          alert($("input[name='sec_officer']:checked").val()); 
      } else {
          alert($("input[name='sec_officer']:checked").val()); 
      }
      });
});
</script>
于 2013-08-01T01:45:32.323 回答