我有一个带有表单的PHP页面,当它被提交时应该返回一个HighCharts图表和一个表格,数据被绘制。表单将$ _POST请求发送到另一个PHP文件,该文件检索变量,查询数据库并将数据作为数组返回,该数组作为多个系列添加到HighCharts脚本并输出到表中。加载HighCharts图表/表格上的数据使用jQuery提交
我希望图表和表格在表单提交之前不可见,但无论如何编码,我都无法更改2 DIV的可见性。当页面加载,这jQuery是触发:
$(function() {
$('#tableData').hide();
$('#chart-container').hide();
$('#submit').click(function() {
$('#tableData, #chart-container').show();
});
当提交表单时,所有的数据都回来了,我可以看到这一切在检查,但#tableData
和#chart-container
的div都仍然显示display:none
。
我已经试过.show
方法结合.on
事件,.click
事件和.submit
事件,但没有工作。
读HighCharts API参考,它看起来像我需要创建一个单独的函数来请求数据,然后调用在load
事件的功能,我只是无法弄清楚如何做到这一点。我没有使用AJAX来返回数据,这是他们在示例中显示的方法。
如何隐藏这些div并在点击提交按钮后显示它们?
好像你每次提交页面或点击表单页面上的提交按钮,这些''#tableData,#chart-container''两个元素都显示出来,但只是第二次延迟,页面将继续重新加载,直到完成呈现。最后,你总是看到这两个元素处于隐藏状态的页面。这个过程一直重复着。除非你用ajax请求完成。 –
@Norlihazmey所以你说唯一的方法来做我想要的是使用AJAX请求? – SpaceAge
应该是这样的。否则,使用持久性存储,可以保存价值,甚至页面的刷新 –