Ajaxy - 添加要求的参数

时间:2011-04-11 08:46:24

标签: jquery ajax

我正在使用jQuery Ajaxy插件:http://balupton.com/projects/jquery-ajaxy

有没有办法为每个Ajaxy请求添加POST参数?

3 个答案:

答案 0 :(得分:12)

您可以使用$.ajaxSetup()设置默认选项 - 包括(GET / POST)数据。

$.ajaxSetup({
    data: { foo: 'bar' }
});

这些数据将与$.ajax()来电中指定的数据合并。

$.ajax({
    type: 'POST',
    url: '/test',
    data: { abc: 123 },
    success: function(resp) { }
});

这将同时发送fooabc

您还可以将其他选项(例如type: 'POST')移动到默认值中,这样您就不必每次都指定它。

答案 1 :(得分:2)

根据http://visualjquery.com你也可以这样:

 $.ajax({
  type: "POST",
  url: "some.php",
  data: "name=John&location=Boston",
  success: function(msg){
  alert( "Data Saved: " + msg );
 }
});

答案 2 :(得分:1)

最好的方法之一是使用$.param() - 一个简单的例子 - 使用投票系统来评论评论的上/下;

<div class="comment_container">
   <div class="vote_container" comment_id="321">
      <a href="javascript:" class="vote vote_up">Up +1</a>
      <a href="javascript:" class="vote vote_down">Down -1</a>
   </div>
   <p>Hello, this a comment!</p>
</div>

<script type="text/javascript">
$('.vote').click(function() {
    var voteUpOrDown = $(this).hasClass('vote_up') ? 1 : 0;
    var id = $(this).parent().attr('comment_id');

    $.ajax('/form/rating', {
      type: 'post',
      data: $.param({ vote: voteUpOrDown, id: id }),
      success: function(data) { }
    });
});
</script>