2013-05-28 28 views
0

首先,感謝您的幫助!在Highslide中使用Ajax for maincontentText(在Highcharts中)

基本上,我在Highcharts中使用Highslide來顯示一些圖片,當有人點擊線圖中的一個數據點時。下面是代碼:

hs.htmlExpand(null, 
       {      
        pageOrigin: 
        { 
         x: this.pageX, 
         y: this.pageY 
        }, 

        headingText: "<p style='margin: 0 auto;'> Weight: " + this.y, 

        maincontentText: "<p class='pictures'></p>" + 
         $.ajax 
       ({ 
        type: "post", 
        url: "pictures.php", 
        data: 
        { 
         "date" : this.Pictures 
        }, 
        success: function(result) 
        { 
         $('.pictures').html(result); 
        } 
       }), 

        width: 700, 

        height: 600 
       });      

眼下,Highslide正確顯示的畫面,但它也在Highslide彈出的端輸出「[對象對象]」。如果我將我的php頁面更改爲「echo」test';「,它會顯示單詞」test「,然後顯示[Object object]。

關於如何擺脫這個[Object object]的任何想法?

謝謝!

回答

0

您的ajax似乎正在返回一個json對象。您需要解析的對象格式化要顯示或返回HTML而不是結果...

編輯::

第二個想法,似乎更像一個問題,你是如何指定主要內容。

在HTML的末尾使用+作爲主要內容,您將包含ajax調用作爲內容。

我會在maincontent中指定html元素,但將ajax移除爲onAfterExpand調用。

http://highslide.com/ref/hs.Expander.prototype.onAfterExpand

+0

我嘗試使用數據類型:「HTML」,但它仍然在[對象的對象]結果在彈出的端部。我的php頁面正在輸出HTML(三張圖片和一些段落)。還有什麼我應該嘗試? – TonTon4Life

+0

[對象對象]意味着被返回的數據是一個對象。然後,您將使用該對象填充段落。您將必須解析對象才能檢索內容。試着在你返回的對象上做一個console.log - 在控制檯中,你將能夠看到對象的內容以及訪問它的關鍵字。 – jlbriggs

+0

情節變厚...我改變了PHP頁面,以便它只是輸出「這是一個測試」使用回聲。現在,在我的彈出窗口中,我得到了「這是一個測試」,然後在一個新行上加上了「[object Object]」。當我使用console.log輸出上述ajax的結果時,它只是給出了「這是一個測試」這一行 - 它不能識別任何可能被解釋爲JSON數據的其他輸出。 我還應該注意到,如果我用main「main」替換maincontentText塊中的所有ajax位,它會在沒有[object Object]的彈出窗口中輸出「test」...所以我認爲它必須與Ajax – TonTon4Life