2
警告:文本jQuery.csv()插件未知錯誤
我使用jQuery.csv插件到csv加載到陣列的壁。它工作得很好,直到最近。我不知道如果有什麼改變,但不是工作,它會顯示在控制檯中出現以下錯誤:
Uncaught TypeError: Object function (a,b){return new c.fn.init(a,b)} has no method 'csv'
我呼籲它(方法同我之前)使用插件文檔中描述的方法:
jQuery.get(csvfile, function(data) { array = jQuery.csv()(data); });
插件文件本身是很短:
/* Usage:
* jQuery.csv()(csvtext) returns an array of arrays representing the CSV text.
* jQuery.csv("\t")(tsvtext) uses Tab as a delimiter (comma is the default)
* jQuery.csv("\t", "'")(tsvtext) uses a single quote as the quote character instead of double quotes
* jQuery.csv("\t", "'\"")(tsvtext) uses single & double quotes as the quote character
*/
;
jQuery.extend({
csv: function(delim, quote, linedelim) {
delim = typeof delim == "string" ? new RegExp("[" + (delim || "," ) + "]") : typeof delim == "undefined" ? "," : delim;
quote = typeof quote == "string" ? new RegExp("^[" + (quote || '"' ) + "]") : typeof quote == "undefined" ? '"' : quote;
lined = typeof lined == "string" ? new RegExp("[" + (lined || "\r\n") + "]+") : typeof lined == "undefined" ? "\r\n" : lined;
function splitline (v) {
// Split the line using the delimitor
var arr = v.split(delim),
out = [], q;
for (var i=0, l=arr.length; i<l; i++) {
if (q = arr[i].match(quote)) {
for (j=i; j<l; j++) {
if (arr[j].charAt(arr[j].length-1) == q[0]) { break; }
}
var s = arr.slice(i,j+1).join(delim);
out.push(s.substr(1,s.length-2));
i = j;
}
else { out.push(arr[i]); }
}
return out;
}
return function(text) {
var lines = text.split(lined);
for (var i=0, l=lines.length; i<l; i++) {
lines[i] = splitline(lines[i]);
}
return lines;
};
}
});
我使用jQuery.noConflict()正是如此:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
</script>
<script type="text/javascript" src="<?php echo $path ?>/js/jquery.csv.js"></script>
<script type="text/Javascript" src="<?php echo $path ?>/js/script.js"></script>
我可以收集的是,該插件正在嘗試使用.extend將函數'csv'添加到jQuery對象,並且它不工作。有沒有人看到/解決過這個問題?即時通訊假設最近有一個改變到1.5.1,但改爲1.5.2並沒有改變任何東西。
在此先感謝。
路徑是有效的,我沒有檢查。並且正在被調用的函數中被調用。 – psolms 2011-04-20 19:42:31
雖然將插件的代碼添加到onload中可以解決問題。所以那是一些東西。謝謝 :) – psolms 2011-04-20 19:43:06