Jquery使用post属性传递ajax调用

时间:2013-01-10 12:43:18

标签: php jquery ajax

这里检查了几个关于堆栈溢出和jquery文档的主题,但仍然卡住了。

我基本上希望发布(使用ajax / jquery)来更新div的内容。

function loadSubCats(value)
{
    $.post("load_sub_cats.php",
        data: { "catid": value },
        type: "POST",
        contentType: "application/x-www-form-urlencoded",
            function(data) {
        $('#sub_categories').html("Data Loaded: " + data);
    });
}

但我没有得到任何回应。该页面包含sub_categories div,对于表单事件,这称为onclick。

<select name='cselect3' onChange='loadSubCats(this.value)' class='e1'>

所以基本上,它应该超过字段的值(cselect3)和load_sub_cats.php应该只是回显$ _POST [catid];而已。但是我对它进行了零活动,所以它认为它的一些简单我搞砸了。

4 个答案:

答案 0 :(得分:1)

您将$.post$.ajax的语法混合在一起。如果要使用对象语法,请调用$.ajax,因为$.post将其参数作为简单的未命名列表。

function loadSubCats(value)
{
   $.ajax({
        url : "load_sub_cats.php",
        data: { "catid": value },
        type: "POST",
        contentType: "application/x-www-form-urlencoded",
        success: function(data) {
            $('#sub_categories').html("Data Loaded: " + data);
        }
    });
}

您也可以直接附加change事件,内联并取消loadSubCats()功能:

$(document).ready(function(){
    $('select[name=cselect3]').change(function(){
       $.ajax({
            url : "load_sub_cats.php",
            data: { "catid": $(this).val() },
            type: "POST",
            contentType: "application/x-www-form-urlencoded",
            success: function(data) {
                $('#sub_categories').html("Data Loaded: " + data);
            }
        });
    });
});

答案 1 :(得分:1)

您遇到$.post语法问题。这是它应该如何:

function loadSubCats(value)
{
    $.post("load_sub_cats.php",{ "catid": value },
            function(data) {
        $('#sub_categories').html("Data Loaded: " + data);
    });
}

尽可能简单。

答案 2 :(得分:1)

function loadSubCats(value)
{
$.post("load_sub_cats.php",
    {  catid: value }, 
     function(data) {
     $('#sub_categories').html("Data Loaded: " + data); }
     );
}

你发送catid不是“catid”

答案 3 :(得分:-1)

两件事:

您在帖子中使用的类型不是必需的。

即使在删除它之后也无法正常工作,只是尝试提醒它 -

function loadSubCats(value)
{
    $.post("load_sub_cats.php",
        data: { "catid": value },
        type: "POST",
        contentType: "application/x-www-form-urlencoded",
            function(data) {
          alert(data)
         $('#sub_categories').html("Data Loaded: " + data);
    });
}

通过提醒您将会知道 - 1)如果有任何php错误,它会提醒, 2)如果php工作正常,它将提醒您的值。

根据最新评论更新我的帖子: 尝试使用如下:

$(document).ready(function() {
  $('.e1').change(function() {
        $.post("load_sub_cats.php",
        data: { "catid": value },
        type: "POST",
        contentType: "application/x-www-form-urlencoded",
            function(data) {
          alert(data)
         $('#sub_categories').html("Data Loaded: " + data);
    });  
  })
});