1

私はそのIDが次のdivを持っています:manufacturer_63 ...そのスタイルは次のとおりです:display:none、visibility:hidden。

私が書いたものは次のとおりです。

$('select.styled2').change(function() {

     var id = this.value;

            $.ajax({
              type: "GET",
              url: 'index.php?act=manufacturerHome&id='+id,
              success: function(data) {

                $("#manufacturer_"+id).html(data);
              }
            });

     $("#manufacturer_"+id).css('visibility','visible');
     $("#manufacturer_"+id).toggle("slow");

});

トグルしません。私がしようとすると:

 $("#manufacturer_"+id).css('display','block');

トグルの代わりに - 動作します。

何かを切り替えるだけで機能します。

4

1 に答える 1

1

あなたは本当にこれをしているはずです:

$('select.styled2').change(function() {
    var id = this.value;

    $.ajax({
        type: "GET",
        url: 'index.php?act=manufacturerHome&id='+id,
        success: function(data) {
            $("#manufacturer_"+id).html(data);
            $("#manufacturer_"+id).css('visibility','visible');
            $("#manufacturer_"+id).toggle("slow");
        }
    });
});

コードでは、ajax 呼び出しが終了したかどうかに関係なく要素が表示されますが、これは ajax 呼び出しが成功した後にのみ要素が表示されます。

余談ですが、 と の両方は必要ありませdisplay: nonevisibility: hidden。だけdisplay: noneで十分で、それから取り除くことができます$("#manufacturer_"+id).css('visibility','visible');

于 2013-01-04T17:08:04.350 に答える