我已經建立使用Joomla 3阿賈克斯負載功能功能問題
在右下角的網站,有一個「聯繫」鏈接加載通過AJAX的接觸形式(使用jQuery load
功能)
問題
我得到這個錯誤在控制檯:
Uncaught TypeError: Cannot call method 'load' of null
我會很GR atefull如果有人可以看看,過去幾天它一直讓我瘋狂。
請注意,該網站使用History.js
腳本進行ajax頁面導航。
我已經建立使用Joomla 3阿賈克斯負載功能功能問題
在右下角的網站,有一個「聯繫」鏈接加載通過AJAX的接觸形式(使用jQuery load
功能)
問題
我得到這個錯誤在控制檯:
Uncaught TypeError: Cannot call method 'load' of null
我會很GR atefull如果有人可以看看,過去幾天它一直讓我瘋狂。
請注意,該網站使用History.js
腳本進行ajax頁面導航。
一:你兩次加載jquery 二:你必須替換jQuery
。 '$.
'
jQuery(document).ready(function($)
{
});
或
function($)
{
}
首先,讓我只是說,你做這種聯繫表單的方式不是最好的方法。您不必通過位於模板文件夾中的單獨的PHP文件。它應該通過一個模塊來完成(Joomla的方式)。
在腳本中,你使用它調用腳本聯繫以下:
$('#contact').load('/templates/tmpl_yogadaviken/ajax/contact_form/contact.php');
我會建議使用JUri::root()
方法做,但是這將需要PHP,因此它必須是移出當前的JavaScript文件。其時,在你的模板文件夾添加這在index.php讓剛剛測試:
$doc = JFactory::getDocument();
$doc->addScriptDeclaration('
jQuery(document).ready(function(){
jQuery(".contact_link, .item-108").click(function(){
if(cont == 0){
jQuery("#contact").load(' . JUri::root() . '"templates/tmpl_yogadaviken/ajax/contact_form/contact.php");
cont = 1;
}
jQuery("#contact").fadeIn(1000);
});
});
');
此外,在的Joomla 3.x中,以確保您只在noConflict模式一次,還加載了jQuery,我建議使用在你的模板index.php文件如下:
JHtml::_('jquery.framework');
擁有多個jQuery的庫可能會導致一些事情發生衝突。
什麼,你也可以做的是使用jQuery Easy插件,它有3個功能,將最有可能解決您的問題:
希望對此有所幫助
THX抽出時間來回答,我已經測試你的代碼(我改變了'「''之前簽署的模板僅僅指剛/ TMPL _...'),但現在我得到這個錯誤:'未捕獲的TypeError:對象#
我已經更新了我的答案中的代碼。嘗試添加它,但不要替換或刪除任何東西,只需編碼和粘貼。至於'JHtml ::'代碼,你可以在你的index.php文件的任何地方添加這個代碼,只要它在''標籤內。如果這不起作用,那麼我建議一個插件,最有可能解決問題 – Lodder
如果我粘貼你的代碼,我得到這個錯誤:'未捕獲的SyntaxError:意外的令牌:' – user3218711
試過你的解決方案,它沉溺於它imidmaatly thx很多 – user3218711