1

例はjsfiddleにあります(phpファイルはcss textareaにあります)。select#main_cat ajax を変更すると、サブカテゴリが検索され、select#sub_cat に入力されます。

唯一の問題は、結果が常に 0 であることです。何が問題なのかわかりません。

どんな助けも当てはまります!

関数.php

function implement_ajax() {
    if(isset($_POST['main_catid'])) {
        $categories=  get_categories('child_of='.$_POST['main_catid'].'&hide_empty=0');
          foreach ($categories as $cat) {
            $option .= '<option value="'.$cat->term_id.'">';
            $option .= $cat->cat_name;
            $option .= ' ('.$cat->category_count.')';
            $option .= '</option>';
          }

          echo '<option value="-1" selected="selected">Scegli...</option>success'.$option;
        die();
    } // end if

}


add_action(‘wp_ajax_my_special_action’, ‘implement_ajax’);
add_action(‘wp_ajax_nopriv_my_special_action’, ‘implement_ajax’);

index.php

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" ></script>
<script>



$(function(){
            $('#main_cat').change(function(){
                    var $mainCat=$('#main_cat').val();

                    // call ajax
                     $("#sub_cat").empty();
                        $.ajax({
                            url:"/wp-admin/admin-ajax.php",
                            type:'POST',
                            data:'action=my_special_action&main_catid=61',// + $mainCat,

                             success:function(results)
                                 {
                                //  alert(results);
                $("#sub_cat").removeAttr("disabled");
                $("#sub_cat").append(results);
                $("#asdf").text(results);
                                        }
                                   });
                          }
                                    );
});




</script>
wp_dropdown_categories('show_count=0&selected=-1&hierarchical=1&depth=1&hide_empty=0&exclude=1&show_option_none=Main Categories&name=main_cat');
?>
<select name="sub_cat" id="sub_cat" disabled="disabled"></select>
4

1 に答える 1

0

これを試して:

$("#sub_cat").empty();
$.ajax({
    url : "/wp-admin/admin-ajax.php",
    type : 'POST',
    data : { // pass data as an objet
        action : 'my_special_action',
        main_catid : 61 // + $mainCat,
    },
    dataType : 'html', // specify html output
    success : function(results)
    {
        //  alert(results);
        $("#sub_cat").removeAttr("disabled");
        $("#sub_cat").append(results);
        $("#asdf").text(results);
    }
});
于 2012-12-18T03:40:02.757 に答える