jQuery点击事件发送POST请求

3

我试图使用jQuery在点击事件中发送POST请求,但没有成功。这是我使用的代码:

    <script type="text/javascript">
        $('#taxi_update').click(
            $.ajax({
                'type':'POST',
                'data':'id=17446&chru=0',
                'success':function() { ... },
                'error':function(){ ... },
                'url':'/url/',
                'cache':false
            })
        );
    </script>
    <a href="#" id="taxi_update">update</a>

很遗憾,它没有发送任何POST请求。对此有什么建议吗?
1个回答

17

由于您的脚本出现在元素之前,因此需要将其包装在 document.ready 事件中,并且点击处理程序本身必须是一个函数,像这样:

$(function() {
  $('#taxi_update').click(function() {
    $.ajax({
      type: 'POST',
      data: 'id=17446&chru=0',
      success: function() { ... },
      error: function(){ ... },
      url: '/url/',
      cache:false
    });
  });
});

大多数情况下,你需要把你的代码放在一个 document.ready 函数里面,因为它要查找的元素可能还没有准备好或者还不存在,像这样:

$(function() { });
//or...
$(namedFunction);
//or...
$(document).ready(function() { });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接