2012-04-17 55 views
0

我有一個網站列表的數組,我使用http://codepad.agiletoolkit.org/newsletter示例編碼一步一步的形式。Atk4 Step by Step表單不加載Facebook Like按鍵

在第二步中,我把喜歡用下面的代碼按鈕:

 

    $attr = array (
     'data-send' => FALSE, 
     'data-layout' => 'button_count', 
     'data-width' => 100, 
     'data-show-faces' => FALSE 
    ); 
    foreach($this->sites as $k => $site) { 
     $div = $form->add('View_HtmlElement')->setElement('div')->set(NULL); 
     $attr['data-href'] = $site; 
     $div->addClass('fb-like'); 
     $div->setAttr($attr); 
    } 

這工作很好,當我直接訪問,但是當我試圖通過一個按鈕來訪問時,如按鈕不加載。

任何解決方案?

回答

1

爲什麼Facebook和其他一些按鈕可能無法在AJAX頁面上工作,是因爲facebook腳本通常只在頁面初始加載期間處理您的HTML。當您的示例中的表單轉到下一步時,它將使用AJAX加載其他表單。因此,您需要手動觸發Facebook的腳本來重新瀏覽頁面或執行重定向而不是重新加載。你需要改變:

$this->js()->atk4_load($this->api->getDestinationURL('./step2')) 
    ->execute(); 

$this->js()->univ()->location($this->api->getDestinationURL('./step2')) 
    ->execute(); 

您也可能會發現這篇文章有用:http://agiletoolkit.org/blog/adding-twitter-button-to-ajax-page/

+0

謝謝,這個作品非常好! – 2012-04-21 11:56:43

+0

請接受答案。謝謝。 – romaninsh 2012-04-23 08:42:41

相關問題