Javascript 将html div传递给ajax调用

Javascript 将html div传递给ajax调用,javascript,jquery,html,node.js,ajax,Javascript,Jquery,Html,Node.js,Ajax,因此,我有我的服务器端代码,它执行多个bigquery查询并将结果安排在一个表中,这个服务器端代码由客户端的ajax调用调用。 我希望能够将表/div从服务器端代码发送到客户端,并在那里进行渲染。这可能吗 我不想通过调用首先获得JSON结果来在客户机上创建表,因为我不知道将首先运行哪个查询,而且所有结果都不同。(对于每个查询,也不可能有多个ajax调用) 服务器代码(app.js) 因此,您可以简单地在响应json中增加一个基于查询的参数,例如“queryProcessed”吗 然后在客户端添加

因此,我有我的服务器端代码,它执行多个bigquery查询并将结果安排在一个表中,这个服务器端代码由客户端的ajax调用调用。 我希望能够将表/div从服务器端代码发送到客户端,并在那里进行渲染。这可能吗

我不想通过调用首先获得JSON结果来在客户机上创建表,因为我不知道将首先运行哪个查询,而且所有结果都不同。(对于每个查询,也不可能有多个ajax调用)

服务器代码(app.js)


因此,您可以简单地在响应json中增加一个基于查询的参数,例如“queryProcessed”吗


然后在客户端添加额外的检查,并根据“queryProcessed”呈现标记,这样您就可以简单地在响应json中根据被点击的查询增加一个参数,例如“queryProcessed”了吗


然后在客户端添加额外的检查,并根据“queryProcessed”呈现标记。是的,您可以,但正如您在注释中指出的,返回的数据存在问题

未能在“节点”上执行“appendChild”:参数1不是“节点”类型

这是一个错误,当您试图用JavaScript附加一个子节点时抛出,JavaScript不是documentElement(即
document.createElement('div')
)。因为您已经在使用jQuery,所以可以轻松地更改代码

在AJAX调用的成功函数中,更改

document.getElementById('outputTables').appendChild(data);


如果您希望能够从一个页面执行多个AJAX调用并每次更改表(如用新表替换旧表),则应该使用
html(数据)
,而不是
append(数据)

是的,您可以,但正如您在注释中指出的,返回的数据存在问题

未能在“节点”上执行“appendChild”:参数1不是“节点”类型

这是一个错误,当您试图用JavaScript附加一个子节点时抛出,JavaScript不是documentElement(即
document.createElement('div')
)。因为您已经在使用jQuery,所以可以轻松地更改代码

在AJAX调用的成功函数中,更改

document.getElementById('outputTables').appendChild(data);



如果您希望能够从一个页面执行多个AJAX调用并每次更改表(如用新表替换旧表),则应该使用
html(数据)
而不是
append(数据)

您还应该包含一个数据示例这肯定会起作用,但您的
res.send(表)
当前处于错误位置。将其放在for循环之后。@DouwedeHaan我在ajax调用时收到一个错误“未能在“节点”上执行“appendChild”:参数1不是“Node”类型。
appendChild
需要一个documentElement(纯JavaScript)。由于您已经在使用jQuery,我建议您不要使用
document.getElementById('outputTables').appendChild(数据)
应该使用
$('#outputTables')。追加(数据)
如果这是您问题的解决方案,我会将其编辑为答案。您还应该包括一个数据示例。这肯定会起作用,但您的
res.send(table)
当前位置错误。将其放在for循环之后。@DouwedeHaan我在ajax调用时收到一个错误“未能在“节点”上执行“appendChild”:参数1不是“Node”类型。
appendChild
需要一个documentElement(纯JavaScript)。由于您已经在使用jQuery,我建议您不要使用
document.getElementById('outputTables').appendChild(数据)
应该使用
$('#outputTables')。追加(数据)如果这是您问题的解决方案,我会将其编辑为答案。感谢您的帮助!但我得到了另一个错误,错误:TypeError:将循环结构转换为JSON。这来自app.js,我想可能来自res.send()函数。有任何修复吗?@HamzaMoiyadi该错误显示在客户端还是服务器端?它出现在服务器端-side@HamzaMoiyadi我不确定,但是有很多关于StackOverflow的关于这个错误的参考资料。我建议在一个新问题中提出这个问题,或者搜索可以提供答案的旧问题,因为我在node.js中没有那么丰富的经验。@HamzaMoiyadi没问题,很乐意帮助!顺便说一句,如果这个答案解决了你之前的问题,你可以随时投票/接受它!可以帮助其他人解决同样的问题。谢谢你这么多的帮助!但我得到了另一个错误,错误:TypeError:将循环结构转换为JSON。这来自app.js,我想可能来自res.send()函数。有任何修复吗?@HamzaMoiyadi该错误显示在客户端还是服务器端?它出现在服务器端-side@HamzaMoiyadi我不确定,但是有很多关于StackOverflow的关于这个错误的参考资料。我建议在一个新问题中提出这个问题,或者搜索可以提供答案的旧问题,因为我在node.js中没有那么丰富的经验。@HamzaMoiyadi没问题,很乐意帮助!顺便说一句,如果这个答案解决了你之前的问题,你可以随时投票/接受它!可以帮助其他有同样问题的人。
document.getElementById('outputTables').appendChild(data);
$('#outputTables').append(data);