Javascript 在动态生成的元素上提交时创建canvasjs
javascript、jquery和CanvasJS的新特性 我的问题是: 正如您所注意到的,我将使用ajax提交一组数据。由于一些不存在,我将把事件附加到Submit上,使其生效 现在,我的问题是图表:我正在使用CanvasJS创建图表,在编写代码之前,我使用id chartContainer动态创建了一个div,之后我将使用函数CanvasJS.chart()启动购物车 问题是,如果在html文件中创建div,代码将正常工作,但如果在脚本中创建div,代码将失败,因为: CanvasJS错误:找不到id为“chartContainer”的图表容器 我怎样才能克服这个问题Javascript 在动态生成的元素上提交时创建canvasjs,javascript,jquery,html,canvasjs,Javascript,Jquery,Html,Canvasjs,javascript、jquery和CanvasJS的新特性 我的问题是: 正如您所注意到的,我将使用ajax提交一组数据。由于一些不存在,我将把事件附加到Submit上,使其生效 现在,我的问题是图表:我正在使用CanvasJS创建图表,在编写代码之前,我使用id chartContainer动态创建了一个div,之后我将使用函数CanvasJS.chart()启动购物车 问题是,如果在html文件中创建div,代码将正常工作,但如果在脚本中创建div,代码将失败,因为: CanvasJS错误
$(文档).ready(函数(){
$(文档).on('submit','form',function(event){
$.ajax({
键入:“POST”,
url:$(this.attr(“操作”),
数据:$(this).serialize(),
数据类型:“json”,
编码:正确
}).完成(功能(数据){
var结果=data.kg/数学功率((data.cm/100),2);
var result3=结果toFixed(2);
var result2=''+结果toFixed(2);
结果2+=‘返回’;
如果(结果>25){
结果2+=“你的体重至少应减轻5%”
}否则,如果(结果>18.5){
结果2+=“您的体重非常理想”
}否则{
结果2+=“你体重不足,你应该将你的饮食与不同的食物结合起来,多吃”
}
结果2+=''
var仪表={
标题:{
正文:“体重指数”
},
数据:{
y:结果3
},
最多:30
};
var chart=新的CanvasJS.chart(“chartContainer”);
创建量规(图表);
函数createGauge(图表){
仪表.未占用={
y:gauge.maximum-gauge.data.y,
颜色:“E3”,
toolTipContent:null,
高亮度:错误,
单击:函数(){
gauge.unoccubied.exploded=真;
}
}
gauge.data.click=函数(){
gauge.data.exploded=true;
};
如果(!gauge.data.color)
gauge.data.color=“#6b58f2”;
gauge.valueText={
文本:gauge.data.y.toString(),
垂直线:“中心”
};
风险值数据={
类型:“甜甜圈”,
数据点:[{
y:仪表最大值,
颜色:“透明”,
toolTipContent:null
},
计量数据,
无人
],
};
如果(!chart.options.data)
chart.options.data=[];
图表.选项.数据.推送(数据);
if(仪表标题){
chart.options.title=gauge.title;
}
如果(!chart.options.subtitles)
chart.options.subtitles=[];
图表。选项。字幕。推送(仪表。数值文本);
chart.render();
}
结果2+='';
var clickhere=$(“#clickhere”);
变量形式=$('form');
$('form')。替换为(result2);
$(文档)。在(“单击”上,“#单击此处”,函数(){
$('.results').remove();
});
});
event.preventDefault();
});
});
高度
开关col-md-3“>cm
厘米
重量
st,lb
公斤
年龄
年数
性?
性?
对于儿童而言,BMI百分位数具有性别特异性。对于儿童和成人,我们会根据您是男性还是女性提供更多个性化信息
男性
女性
种族群体(可选)?
民族的
体重指数为23或以上的黑人、亚洲人和其他少数民族群体患2型糖尿病和其他长期疾病的风险更高
未说明
白色
黑加勒比
非洲黑人
印度的
巴基斯坦人
孟加拉国
中国人
中东
混合的
其他
活动水平
因此,我们可以个性化您的结果
不活跃
中度活跃
活跃的
每周不到30分钟
每周30到60分钟
每周60到150分钟
价值:
在调用图表之前,将div追加到文档中
你得走了
result2 += '</div>';
var clickhere = $('#clickhere');
var form = $('form');
$('form').replaceWith(result2);
您还可以在外部执行更多功能。文档中不需要它。就绪
还有这个
$(document).on("click", "#clickhere", function() {
$('.results').remove();
});
不属于。也完成了
这是一个更好的版本
函数createGauge(图表){
仪表.未占用={
y:gauge.maximum-gauge.data.y,
颜色:“E3”,
toolTipContent:null,
高亮度:错误,
单击:函数(){
gauge.unoccubied.exploded=真;
}
}
gauge.data.click=函数(){
gauge.data.exploded=true;
};
如果(!gauge.data.color)
gauge.data.color=“#6b58f2”;
gauge.valueText={
文本:gauge.data.y.toString(),
垂直线:“中心”
};
风险值数据={
类型:“甜甜圈”,
数据点:[{
y:仪表最大值,
颜色:“透明”,
toolTipContent:null
},
计量数据,
无人
],
};
如果(!chart.options.data)
chart.options.data=
$(document).on("click", "#clickhere", function() {
$('.results').remove();
});