2012-10-01 45 views
0

我已經嘗試了很多刪除此錯誤,但無法獲得成功。當我在localhost上運行此腳本時,它的工作正常,但沒有在Joomla上工作框架工作。 的代碼如下:jQuery TypeError:example(「input#autocomplete」)。自動完成不是函數

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<?php $viewFields=array('c++', 'java', 'php', 'coldfusion', 'javascript', 'asp', 'ruby'); ?> 
    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 

    <script> 
    var example=jQuery.noConflict(); 
    var arrayFromPHP = <?php echo json_encode($viewFields) ?>; 
    example(document).ready(function() { 
    example("input#autocomplete").autocomplete({ 
    source: arrayFromPHP 
}); 
    }); 
    </script> 
</head> 
<body> 
<center> 
<p><img src="<?php echo JURI::base(); ?>images/search_1.png" border="0" alt="" /> 
<img src="<?php echo JURI::base(); ?>images/business_2.png" border="0" alt="" /> 
<img src="<?php echo JURI::base(); ?>images/review_3.png" border="0" alt="" /> 
</p> 
</center> 
<input id="autocomplete" /> 
</body> 
</html> 

它給我這個錯誤: -

-

[08:30:24.870] Use of getAttributeNode() is deprecated. Use getAttribute() instead. @ http://50.116.97.120/~amarhost/storage/media/system/js/mootools-core.js:343 
[08:30:27.853] TypeError: example("input#autocomplete").autocomplete is not a function @ http://50.116.97.120/~amarhost/storage/index.php/component/storage/?action=war&Itemid=105:210 
+0

看起來像文件引用錯誤。檢查腳本是否首先在控制檯部分加載 –

+0

此代碼適用於我...... –

+0

Joomla的哪個版本執行您嘗試連接的框架? – Lodder

回答

0

被添加到jQuery的也許noconflict清楚一切。嘗試把noconflict剛剛加載jQuery後

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
<script>var example=jQuery.noConflict();</script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 
<script> 
    var arrayFromPHP = <?php echo json_encode($viewFields) ?>; 
    example(document).ready(function() { 
    example("input#autocomplete").autocomplete({ 
     source: arrayFromPHP 
    }); 
    }); 
</script> 
+0

謝謝你猜對了,現在完美的工作:) –

0

我想補充說,可能有多個jquery文件包括在內。也許從其他包含的PHP文件。刪除這個包含並只保留在一個地方。最好的辦法是將這個js文件包含在一些php文件中,然後 使用include_once('jquery_include.php');包含在所需的文件中。

這可能會解決您的問題。我有同樣的問題。這解決了我的問題。

有些事情是這樣的。

jquery_include.php

<script src="scripts/jquery.js" type="text/javascript"></script> 

然後包括所需的PHP文件這個PHP文件。

include_once('jquery_include.php'); 

希望得到這個幫助。

相關問題