0

私は円グラフタイプのものを持っていて、クリックされたリンクに応じてその値を変更する必要があります(下のリンクを参照し、ボタン70をクリックして意味を確認してください)

http://fifamatchgenerator.com/dev/piechart/examples/

これを機能させるコードは次のとおりです。

$('.updateEasyPieChart').on('click', function(e) {
    e.preventDefault();
    $('.percentage, .percentage-light').each(function() {
        var newValue = document.getElementById(1).innerHTML;
        $(this).data('easyPieChart').update(newValue);
        $('span', this).text(newValue);

(1)、ページ上の順次リンクの 1 つから ID 1 を取得します。

<li><a href="#" id="1" class="button updateEasyPieChart">70</a></li>
<li><a href="#" id="2" class="button updateEasyPieChart">60</a></li>
<li><a href="#" id="3" class="button updateEasyPieChart">50</a></li>

そのIDを呼び出すだけなので、明らかに最初のリンクでのみ機能します。今、これが私が助けを必要としているところです。私の言いたいことが理解できれば、document.get 内の値を、クリックされたリンクの ID で定義する必要があります。そのため、ID が 2 の 2 番目のリンクがクリックされたときに、それを and に渡す必要がありdocument.getますupdate。簡単に聞こえますが、私の JavaScript のスキルは、自分で作業するには十分ではありません。私は大量のグーグル検索を行ってきましたが、役に立つものや機能するものを見つけることができないようです。私は誰かが私のためにそれをやってくれるのを本当に探しているわけではありません。ただ私を正しい方向に向けてください!

ps ウェブサイトから入手した円グラフのコード ...しかし、値を変更するコード (ちょっと) は、私と友人によって書かれました。

4

3 に答える 3

0

残念ながら、現在これを実際にテストすることはできませんが、これを試してください。

クリックのターゲットを返す関数を作成します。

function getTarget(e) {
    var result = null;
    if (typeof e != "undefined") {
        if (typeof e.target != "undefined") {
            result = e.target;
        }
        else if (typeof e.srcElement != "undefined") {
            result = e.srcElement;
        }
    }
    return result;
}

おそらくIEでこれを実行している人がどこかにいるので、以下を含める必要があります。

var ie = document.all;

次に、次のようにgetTarget関数を呼び出します。

selectedElement = getTarget(ie ? event : e);

次に、次のコマンドで値を変更できます。

var newValue = selectedElement.innerHTML;
于 2013-01-23T01:39:07.083 に答える
0

thisクリックされた要素を参照します。

var newValue = this.innerHTML;
于 2013-01-23T01:17:50.920 に答える
0

このコードは、順序付けられていないリスト内のリンクの量に関係なく動的です。内側の html 内から数値を取得し、円グラフを更新します。すべてのコードを見ていないので、円グラフ部分の更新をいじる必要があるかもしれません:)

これがあなたのコードからコピーされたリストです

  • 70
  • 60
  • 50
  • 順序なしリストの各アンカー タグにクリック関数をバインドするコードを次に示します。

            $('#myUnorderedList li a').click(function() {
    
                var newValue = $(this).html();
    
                $('.percentage, .percentage-light').each(function() {
    
                $(this).data('easyPieChart').update(newValue);
                $('span', this).text(newValue);
              });
            });
    
    于 2013-01-23T01:32:54.397 に答える