通过AJAX提交表单后显示图表
Display chart after form submit via AJAX
我需要显示一个报告,其中包含来自服务器的一些数据,这还包括一个图表。我试图发送json数据使用$。getJSON一旦表单已经提交,但由于某种原因,我甚至不能回送$_GET[rep],以确保我收到正确的数据。下面是php代码,这里是js http://jsfiddle.net/f8rGb/2/
PHP代码 if (isset($_POST["search"]) and $_POST["search"] == "go"){
$name = $_POST['term'];
$project = new Project();
$pro = $project->get_project($name);
$serv = $project->get_project_service_by_id($pro);
// DOING this to make sure i recieve the variable
// echo $_GET['rep'];
if(isset($_GET['rep']))
die(json_encode($serv));
}
JS代码 function searchProjectsRep() {
// TRIGGERING THIS FUNCTION IN THE ONSUBMIT EVENT OF THE FORM
var datos = $('#formProjectsRepSearch').serialize();
var uri = $('#formProjectsRepSearch').attr('action');
$.ajax({
url: uri,
data: datos,
type: 'POST',
success: function(resp) {
$('#ajaxProjectsRep').html(resp);
projectChart();
}
});
}
// CHART FUNCTION
function projectChart(){
$.getJSON('controller.php?rep=1', function(data) {
options = {
chart: {
renderTo: 'chart_div',
defaultSeriesType: 'pie'
},
title: {
text: 'Datos de proyecto'
},
series: []
};
var statusCount = {},
serie1 = [];
data.forEach(function(e) {
statusCount[e.status] = 1 + (statusCount[e.status] || 0);
});
$.each(statusCount, function(status, count) {
serie1.push( [status, count] );
});
options.series.push({data: serie1});
new Highcharts.Chart(options);
});
}
您只能执行POST
请求或GET
请求,而不是同时执行这两个请求,因此不要在检查POST
请求是否完成的函数中返回GET
变量的内容:
if ( isset($_POST["search"]) && trim( $_POST["search"] ) == "go" ){
$name = $_POST['term'];
$project = new Project();
$pro = $project->get_project($name);
$serv = $project->get_project_service_by_id($pro);
exit;
}
if(isset($_GET['rep']))
echo json_encode($serv);
exit;
}
另一方面,进行两次ajax调用,仅仅返回提交表单的第一次调用中的数据有什么意义?
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何使用WCF服务和javascript表单post上传.doc文件
- Javascript生成的表单未提交
- 如何使用javascript或html下载PDF格式的填写表单
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- Ajax发布表单序列化,发布引号'
- 多级HTML表单
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 在验证和发送邮件后更改联系人表单的 html
- jQuery表单添加不适用于下拉列表
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- 如何从pdftron webviewer获取表单数据
- JS验证ajax返回的html中的表单数据
- Javascript更新孙窗口中的表单元素
- 解析javascript表单验证器
- 阻止表单元素提交
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- Jquery提交表单而不刷新