0

60秒ごとにjsonファイルから.totalmembers2つのdivをフィードしようとしています。.totalcomm

json ファイルは次のようになります。{ "members": { "data": [ { "TotalMembers": 14 } ] }, "communities": { "data": [ { "TotalCommunities": 10 } ] } }

ここで何が間違っていますか?

    $(function FeedTicker() {
        $.ajax({
            type: "GET",
            url: "default.cs.asp?Process=ViewStats",
            dataType: 'json',
            success: function(data) {
                if (index == "members") {
                    $(".totalmembers").html(data.totalmembers);

                } else if (index == "communities") {
                    $(".totalcomm").html(data.totalcommunities);
                }
            $('.totalmembers').ajaxSuccess(function(){
                $(this).ticker({
                    pauseOnItems: 6000, 
                    displayType: 'fade',
                    controls: false, 
                    titleText: ''
                });
            })
            $('.totalcomm').ajaxSuccess(function(){
                $(this).ticker({
                    pauseOnItems: 6000, 
                    displayType: 'fade',
                    controls: false, 
                    titleText: ''
                });
            })
            }
        })
    });
4

2 に答える 2

1

1 つのオプションは、JSON を変更することです。のようなもの{ totalmembers: 109, totalcommunities : 3}。JS を変更せずに動作させるには、このようにする必要があります。

別のオプションは、JS を変更することです。成功のコールバックを次のように変更します。

function(data) {
  if (index == "members") {
    $(".totalmembers").html(data.members.data[0].TotalMembers);
  } else if (index == "communities") {
    $(".totalcomm").html(data.communities.data[0].TotalCommunities);
  }
}

ajaxSuccess の登録を、成功のコールバック以外の場所に移動することも良い考えだと思います。現在、コードは ajax リクエストが成功するたびに div を再登録しています。

于 2013-04-15T07:27:12.420 に答える