簡體   English   中英

加載頁面上沒有動作javascript

[英]No action javascript on load page

當我加載頁面時,js必須顯示默認值:month,問題是未顯示圖形。 我必須單擊月份以顯示信息。

在我的ajax中,控制台查詢字符串: range: month和此代碼來標識范圍。

  $group = HTML::sanitize($_GET['range']);

  if (empty($group)) {
    $group = 'month';
  }

 switch($group) {
 }

在javascript代碼下方(圖libray),允許顯示圖形

謝謝

<script type="text/javascript">
$('#range a').on('click', function(e) {
    e.preventDefault();

    $(this).parent().parent().find('li').removeClass('active');

    $(this).parent().addClass('active');

    $.ajax({
        type: 'get',
        url: '{$link}?range=' + $(this).attr('href'),
        dataType: 'json',
        success: function(json) {
            if (typeof json['order'] == 'undefined') { return false; }

            var option = {  
                shadowSize: 0,
                colors: ['#9FD5F1', '#1065D2'],
                bars: { 
                    show: true,
                    fill: true,
                    lineWidth: 1
                },
                grid: {
                    backgroundColor: '#FFFFFF',
                    hoverable: true
                },
                points: {
                    show: false
                },
                xaxis: {
                    show: true,
                    ticks: json['xaxis']
                }
            }

            $.plot('#chart-sale', [json['order'], json['customer']], option);   

            $('#chart-sale').bind('plothover', function(event, pos, item) {
                $('.tooltip').remove();

                if (item) {
                    $('<div id="tooltip" class="tooltip top in"><div class="tooltip-arrow"></div><div class="tooltip-inner">' + item.datapoint[1].toFixed(2) + '</div></div>').prependTo('body');

                    $('#tooltip').css({
                        position: 'absolute',
                        left: item.pageX - ($('#tooltip').outerWidth() / 2),
                        top: item.pageY - $('#tooltip').outerHeight(),
                        pointer: 'cusror'
                    }).fadeIn('slow');  

                    $('#chart-sale').css('cursor', 'pointer');      
                } else {
                    $('#chart-sale').css('cursor', 'auto');
                }
            });
        }
    });
});

$('#range .active a').trigger('click');
</script>

錯誤控制台:

uncaught TypeError: $.plot is not a function
    at Object.success (index.php:280)
    at c (jquery-3.4.0.min.js:2)
    at Object.fireWith [as resolveWith] (jquery-3.4.0.min.js:2)
    at l (jquery-3.4.0.min.js:2)
    at XMLHttpRequest.<anonymous> (jquery-3.4.0.min.js:2)

行:

        $.plot('#chart-sale', [json['order'], json['customer']], option);

我寫答案只是為了關閉帖子(您可以在問題注釋中看到討論)。請記住,JavaScript沒有編譯,因此每個表達式都是從上至下讀取的。 為了確保您的功能可以被解釋器識別,您需要為腳本賦予正確的順序。 無論如何,如果您使用的是jQuery,則可以在JavaScript中通過windows.load = function(){<your_code>}$(document).ready(function(){<your_code>})加載頁面后執行代碼。圖書館 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM