Javascript 单击按钮时调用AJAX不起作用

Javascript 单击按钮时调用AJAX不起作用,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在从AJAX调用一个API 当我这样调用AJAX时 $(function (){ $.ajax({ type:'GET', url :"/tournament", dataType: 'json', success: function(data) { console.log('success',data); }, error:function(exception){

我正在从AJAX调用一个API

当我这样调用AJAX时

$(function (){

    $.ajax({
       type:'GET',
       url :"/tournament",
       dataType: 'json',
       success: function(data) {
           console.log('success',data);
       },
       error:function(exception){
           alert('Exception:'+exception);
       }   
   });

});
这是正常工作没有任何错误,但当我使用这

$('#btnadad').on('click',function (){

   alert("ok");
   $.ajax({
   type:'GET',
   dataType: 'json',
   url :"/tournament",
   success: function(data) {
        console.log('success',data);

   },
   error:function(exception){
      alert('Exception:'+exception);
   }
}); 
});
此弹出“错误”警报, 有人能帮我一下吗?出了什么差错

HTML主体是这样的

<form>
<h2>
    <font color="#FFFFFF">
    <br><br><input type="text" name="name" placeholder ="Tournament Name"><br>
    <table>
        <?PHP
        //print_r($teams);

        for ($i = 0; $i < $count; $i++) {
            ?>
            <tr>
                <td><input type="checkbox" name=<?php echo $taemId[$i] ?></td>
                <td><?php echo $teamname[$i] ?></td>
            </tr>
            <?php
        }
        ?>

    </table>
    <button id="btnadad">ADD</button>

</form>

<script src ="/js/myjs.js"></script>




添加
这里我调用一个API并动态显示复选框

我正在检查控制台…当我单击按钮时,警报框将弹出,并且在“网络”选项卡中,“锦标赛路径”的状态被取消。当我单击它查看响应时,它显示加载响应数据失败

我曾尝试在tag中的同一html文件中调用此函数,但它也不起作用

<script>
function getOnClick()
{
    alert("ok");
    $.ajax({
        type: 'GET',
        url: "http://harshal:8888/tournament",
        success: function(data) {
            alert("no error in alert");
            console.log('success', data);

        },
        error: function() {
            alert("error in alert");
        }
    });
}

函数getOnClick()
{
警报(“正常”);
$.ajax({
键入:“GET”,
url:“http://harshal:8888/tournament",
成功:功能(数据){
警报(“警报中无错误”);
console.log('success',数据);
},
错误:函数(){
警报(“警报中的错误”);
}
});
}


在button的onclick事件上调用它,也会得到相同的结果,

$ajax error函数需要3个参数

请求失败时要调用的函数。函数接收 三个参数:jqXHR(在jquery1.4.x中,XMLHttpRequest)对象,一个 描述发生的错误类型的字符串,以及可选的 异常对象(如果发生)

试着像这样改变

$('#btnadad').on('click',function (){

   alert("ok");
   $.ajax({
   type:'GET',
   dataType: 'json',
   url :"/tournament",
   success: function(data) {
        console.log('success',data);

   },
   error:function(jqXHR,textStatus,errorThrown ){
      alert('Exception:'+errorThrown );
   }
}); 
});

$ajax错误函数接受3个参数

请求失败时要调用的函数。函数接收 三个参数:jqXHR(在jquery1.4.x中,XMLHttpRequest)对象,一个 描述发生的错误类型的字符串,以及可选的 异常对象(如果发生)

试着像这样改变

$('#btnadad').on('click',function (){

   alert("ok");
   $.ajax({
   type:'GET',
   dataType: 'json',
   url :"/tournament",
   success: function(data) {
        console.log('success',data);

   },
   error:function(jqXHR,textStatus,errorThrown ){
      alert('Exception:'+errorThrown );
   }
}); 
});

谢谢朋友们的帮助,你的努力对我来说很重要,我很高兴地告诉你,我刚刚找到了这个问题的答案,下面的代码让它发生了

$('#btnadad').on('click',function (e){       
   alert("ok");
   $.ajax({
   type:'GET',
   url :"/tournament",
   dataType: 'json',
   success: function(data) {
        console.log('success',data);

   },
   error:function(exception){alert('Exeption:'+exception);}
}); 
 e.preventDefault();
});

谢谢朋友们的帮助,你的努力对我来说很重要,我很高兴地告诉你,我刚刚找到了这个问题的答案,下面的代码让它发生了

$('#btnadad').on('click',function (e){       
   alert("ok");
   $.ajax({
   type:'GET',
   url :"/tournament",
   dataType: 'json',
   success: function(data) {
        console.log('success',data);

   },
   error:function(exception){alert('Exeption:'+exception);}
}); 
 e.preventDefault();
});

我也有同样的问题。如果使用
onclick
,请不要使用
表单
。在本地环境中,它正在工作,但当您进入生产环境时,
ajax
请求正在取消。解决方案是删除
表单
标记并添加
div
标记。

我也遇到了同样的问题。如果使用
onclick
,请不要使用
表单
。在本地环境中,它正在工作,但当您进入生产环境时,
ajax
请求正在取消。解决方案是删除
表单
标记并添加
div
标记。

以及控制台和网络选项卡中的内容?是否尝试调试错误?
error
处理程序接受多个参数,这些参数包含有关问题的详细信息。还有控制台要检查。问题将出现在服务器端代码的某个地方。“不工作”永远都是不够的信息。我将类似于此的资源解释为脚本,但使用MIME类型text/plain进行传输:“…S9JMLUC3RNCNA9JMLHZZZ1JBGLLBNQXMDAULIZJB29RAWVZU3RHDHVZPWNVB2TPZUYWZWQ=”.一定有一些你没有透露的事情让这些不同,因为代码显然是相同的。下一个要收集的数据是在ajax错误处理程序中作为参数返回的特定错误信息。错误:函数(异常){alert('Exeption:'+exception);}使用了它,它会向我发出类似“Exeption:[object object]”的警报以及控制台和网络选项卡中的内容。您是否尝试过调试错误?
error
处理程序接受多个参数,这些参数包含有关问题的详细信息。还有控制台要检查。问题将出现在服务器端代码的某个地方。“不工作”永远都是不够的信息。我将类似于此的资源解释为脚本,但使用MIME类型text/plain进行传输:“…S9JMLUC3RNCNA9JMLHZZZ1JBGLLBNQXMDAULIZJB29RAWVZU3RHDHVZPWNVB2TPZUYWZWQ=”.一定有一些你没有透露的事情让这些不同,因为代码显然是相同的。下一个要收集的数据是在ajax错误处理程序中作为参数返回的特定错误信息。错误:函数(异常){alert('Exeption:'+exception);}使用了这一点,它会给我类似“Exeption:[object object]”的警告谢谢你的建议我会记住的谢谢你的建议我会记住的