Javascript Localhost和Webhost错误

Javascript Localhost和Webhost错误,javascript,Javascript,这段代码适用于在线编译器和stackoverflow,但为什么不适用于我的web主机和本地主机呢 <html> <head><script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script type="text/javascript"> $('.radiogroup').on(

这段代码适用于在线编译器和stackoverflow,但为什么不适用于我的web主机和本地主机呢

<html>
    <head><script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

        <script type="text/javascript">
    $('.radiogroup').on('change', function() {
      $('#amount').val( this.value );
    });</script></head>
    <body>
    <input type="radio" name="radiogroup" class="radiogroup" value="5" />
    <input type="radio" name="radiogroup" class="radiogroup" value="10" />
    <input type="radio" name="radiogroup" class="radiogroup" value="15" />
    <input type="radio" name="radiogroup" class="radiogroup" value="20" />
    <br /><br />
    <input type="text" name="amount" id="amount" /></body>
    </html>

$('.radiogroup')。在('change',function()上{
$('#amount').val(this.value);
});



您的头部和身体标签混杂在一起。我已经对它进行了更新,以正确显示头部和身体部分

<html>
 <head>
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script type="text/javascript">
      $('.radiogroup').on('change', function() {
        $('#amount').val( this.value );
      });
  </script>
 </head>
 <body>
  <input type="radio" name="radiogroup" class="radiogroup" value="5" />
  <input type="radio" name="radiogroup" class="radiogroup" value="10" />
  <input type="radio" name="radiogroup" class="radiogroup" value="15" />
  <input type="radio" name="radiogroup" class="radiogroup" value="20" />
  <br /><br />
  <input type="text" name="amount" id="amount" />
 </body>
</html>

$('.radiogroup')。在('change',function()上{
$('#amount').val(this.value);
});



您的头部和身体标签混杂在一起,如果您想使用html5,您不需要定义脚本类型,也不必用尾随的反斜杠声明非闭合标签。 如果要使用早期版本的html,请使用类型。 如果要使用xhtml,必须对非闭合标记使用尾部反斜杠

编辑:我发现,您的代码是在呈现元素之前触发的,所以您尝试向当时不存在的元素添加事件处理程序。添加$(函数(){});您的代码将强制jQuery在触发文档就绪事件后运行代码

<!DOCTYPE html>
<html>
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
        <script>
          $(function() {
            $('.radiogroup').on('change', function() {
              $('#amount').val(this.value);
            });
           });
        </script>
    </head>
    <body>
        <input type="radio" name="radiogroup" class="radiogroup" value="5">
        <input type="radio" name="radiogroup" class="radiogroup" value="10">
        <input type="radio" name="radiogroup" class="radiogroup" value="15">
        <input type="radio" name="radiogroup" class="radiogroup" value="20">
        <br><br>
        <input type="text" name="amount" id="amount">
    </body>
</html>

$(函数(){
$('.radiogroup')。在('change',function()上{
$('#amount').val(此.value);
});
});



在任何HTML元素(单选按钮)出现之前,您的Javascript运行得太早了。您的选择器
$('.radiogroup')
则找不到任何内容,单击单选按钮时也不会发生任何事情

要么将Javascript移到
结束标记之前的末尾,要么像这样将代码包装在jQuery中:


你能描述一下你遇到的问题吗?因为它在联机编译器中工作。单选按钮可以打开和关闭,但文本中不显示文本。代码的生成方式使文本框根据收音机的声音改变其值button@Joel我添加了一个屏幕截图来检查浏览器控制台是否存在可能的错误。如何检查它们?不,它们在发布问题时混淆了,相同的问题仍然存在。它们在发布问题时没有混淆,同样的问题是,您提供的代码不起作用。同样的问题文本框仍然是空的你修复了它,冠军!
$(document).ready(function(){
  $('.radiogroup').on('change', function() {
    $('#amount').val( this.value );
  });
})