无法使 (Footable) 函数在 AJAX 调用中工作,但它在其他地方工作
Cannot get (Footable) function to work from within AJAX call but it works elsewhere
编辑: 似乎这个问题只发生在 Chrome。 Firefox 没问题。
Footable 是一个 JQuery 插件。 https://fooplugins.com/plugins/footable-jquery/
"Footable" 插件使用以下函数使 .table class 具有漂亮的布局。 :
jQuery('.table').footable({
"columns": result,
"rows": response
});
我想 运行 AJAX 调用中的函数:
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
//FUNCTION HERE
jQuery('.table').footable({
"columns": result,
"rows": response
});
//FUNCTION ABOVE
......... Other irrelevant code...
});
这给了我以下错误:
jQuery(...).footable is not a function
但是,如果我将函数移到 AJAX 函数之外,它就可以工作。
例如
//FUNCTION HERE
jQuery('.table').footable({
"columns": result,
"rows": response
});
//FUNCTION ABOVE
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
......... Other irrelevant code...
});
我需要能够从 AJAX 中 运行 函数。
为什么 AJAX 会导致一切崩溃?
仅供参考:HTML 文档正在调用这样的脚本:(campaignmanagement.js 是具有上述功能的 运行 文件)
<script src="../vendors/jquery/jquery.js"></script>
<script src="../vendors/footable/js/footable.js"></script>
<script src="../vendors/foundation 6/foundation.js" type="text/javascript"></script>
<script src="../js/campaignmanagement.js"></script>
您在这里使用了两个不同的 jQuery 对象,第一个是 $
(除非您已将其分配给我们看不到的其他对象)和 jQuery
。您可以只在自身内部使用 $
对象,或者获取在 AJAX 请求的闭包中可用的元素的引用。
// grab a reference to the table using jquery
var table = $('.table')
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
table.footable({
"columns": result,
"rows": response
});
});
编辑: 似乎这个问题只发生在 Chrome。 Firefox 没问题。
Footable 是一个 JQuery 插件。 https://fooplugins.com/plugins/footable-jquery/
"Footable" 插件使用以下函数使 .table class 具有漂亮的布局。 :
jQuery('.table').footable({
"columns": result,
"rows": response
});
我想 运行 AJAX 调用中的函数:
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
//FUNCTION HERE
jQuery('.table').footable({
"columns": result,
"rows": response
});
//FUNCTION ABOVE
......... Other irrelevant code...
});
这给了我以下错误:
jQuery(...).footable is not a function
但是,如果我将函数移到 AJAX 函数之外,它就可以工作。
例如
//FUNCTION HERE
jQuery('.table').footable({
"columns": result,
"rows": response
});
//FUNCTION ABOVE
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
......... Other irrelevant code...
});
我需要能够从 AJAX 中 运行 函数。 为什么 AJAX 会导致一切崩溃?
仅供参考:HTML 文档正在调用这样的脚本:(campaignmanagement.js 是具有上述功能的 运行 文件)
<script src="../vendors/jquery/jquery.js"></script>
<script src="../vendors/footable/js/footable.js"></script>
<script src="../vendors/foundation 6/foundation.js" type="text/javascript"></script>
<script src="../js/campaignmanagement.js"></script>
您在这里使用了两个不同的 jQuery 对象,第一个是 $
(除非您已将其分配给我们看不到的其他对象)和 jQuery
。您可以只在自身内部使用 $
对象,或者获取在 AJAX 请求的闭包中可用的元素的引用。
// grab a reference to the table using jquery
var table = $('.table')
$.get('../php/campaignmanagement.php', function(response){
response = JSON.parse(response);
var columns = Object.keys(response[0]);
var result = columns.map(x => {
return {
title: x,
name: x
}//end return
});
table.footable({
"columns": result,
"rows": response
});
});