使用jquery调用该函数

时间:2014-10-31 13:14:38

标签: jquery

我正在调用此功能

<script>
function getvalue(){
$(document).ready(function(){
    $("[type='radio']").change(function ()
    {
      var hidden = $(this).prevAll("[type='hidden']");
      var h3 = $(this).prevAll("h3");
      hidden.val(h3.text());
      //alert(hidden.val());
    });
  });
}
</script>

会发生什么,点击任何单选按钮都不会激活该功能..但是点击第二个,我已经使用了document.ready但它不能正常工作..我缺少的任何一点? Thanx:)

2 个答案:

答案 0 :(得分:1)

删除函数getvalue(){.....或者你调用函数getvalue。此代码未注册事件处理程序&#34; ready&#34;所以不要开火

 <script>

    $(document).ready(function(){
        $("[type='radio']").change(function ()
        {
          var hidden = $(this).prevAll("[type='hidden']");
          var h3 = $(this).prevAll("h3");
          hidden.val(h3.text());
          //alert(hidden.val());
        });
      });

    </script>

 <script>
       function getvalue(){
        $(document).ready(function(){
            $("[type='radio']").change(function ()
            {
              var hidden = $(this).prevAll("[type='hidden']");
              var h3 = $(this).prevAll("h3");
              hidden.val(h3.text());
              //alert(hidden.val());
            });
          });
       }
        getvalue();
        </script>

答案 1 :(得分:1)

在第一次执行此功能时,为所有单选按钮设置更改挂钩。因此,没有为第一个附加的更改处理程序。

删除外部函数包装器以在dom-ready上安装挂钩:

<script>
$(document).ready(function(){
    $("[type='radio']").change(function ()
    {
      var hidden = $(this).prevAll("[type='hidden']");
      var h3 = $(this).prevAll("h3");
      hidden.val(h3.text());
      //alert(hidden.val());
    });
  });
</script>