asp.net - High Chart not load in Safari browser -
i using highchart display charts in application. charts working in other browser except safari browser. highcharts not loaded in dafari browser. below code display data:
function bloodfunction(data) { var bloodpressurecurrentdate = $('#txtdate').val(); datahr = data; var userid = $("#<%=useriddata.clientid%>").val(); var authorizationdata = $("#<%=authorizationdata.clientid %>").val(); var yasislabel; var username; var url = "/intellihapis/api/trendchart/getparameters?userid=" + userid + "&chartname=bloodpressure&n=" + 10 + "&boodpresure=" + parseint(data) + "&bloodpressurecurrentdate=" + bloodpressurecurrentdate; $.ajax({ url: url, crossdomain: true, beforesend: function (xhr) { xhr.setrequestheader("authorization", "basic " + btoa(authorizationdata)) //some characters have been replaced security true base64 of "username:password" }, xhrfields: { withcredentials: true }, cache: false, datatype: 'json', success: function (chartdata) { var factoresb = []; var factoredb = []; var factorehr = []; var goalrangesb = []; var goalrangelimitsb = []; var goalrangedb = []; var goalrangelimitdb = []; var normalrangelimitdb = []; var normalrangelimithr = []; var sbgoalpoints = []; var goallimit = []; var goallimitline = []; var chartname; var subchartname; username = chartdata["patientname"]; if (chartdata["datapointssb"] != null) { (var = 0; < chartdata["datapointssb"].length; i++) { factoresbrange(factoresb, "datapointssb", chartdata, i, "goalpointssb", goalrangesb, goalrangelimitsb); } } if (chartdata["datapointsdb"] != null) { (var = 0; < chartdata["datapointsdb"].length; i++) { factoresbrange(factoredb, "datapointsdb", chartdata, i, "goalpointsdb", goalrangedb, goalrangelimitdb); } } if (chartdata["datapointshr"] != null) { (var = 0; < chartdata["datapointshr"].length; i++) { factoresbrange(factorehr, "datapointshr", chartdata, i, "normalrangepointshr", normalrangelimithr, goalrangelimitdb); } } var options = new object(); options.series = new array(); if (data == 1) { chartname = "blood pressure"; subchartname = "sbp & dbp"; yasislabe = "mm hg"; var sb = 0; var db; if (chartdata["datapointssb"] != null) { //createseriesobject(options.series, factoresb, "sbp", 0); options.series[0] = new object(); options.series[0].name = "sbp"; options.series[0].data = factoresb; options.series[0].type = 'spline'; options.series[0].color = '#6699ff'; options.series[0].plotoptions = { spline: { marker: { enable: false } } }; if (chartdata["goalpointssb"] != null) { if (goalrangesb != 0) { createseriesobjectrange(options.series, goalrangesb, "sbp goal", 1); } else { createseriesobjectrange(options.series, goalrangelimitsb, "sbp goal", 1); } } sb = 1; } else { //createseriesobject(options.series, factoredb, "dbp", 0); options.series[0] = new object(); options.series[0].name = "dbp"; options.series[0].data = factoredb; options.series[0].type = 'spline'; options.series[0].plotoptions = { spline: { marker: { enable: false } } }; if (chartdata["goalpointsdb"] != null) { if (goalrangedb != 0) { createseriesobjectrange(options.series, goalrangedb, "dbp goal", 1); } else { createseriesobjectrange(options.series, goalrangelimitdb, "dbp goal", 1); } } } if (chartdata["datapointsdb"] != null) { if (sb == 1) { createseriesobject(options.series, factoredb, "dbp", 2); options.series[2] = new object(); options.series[2].name = "dbp"; options.series[2].data = factoredb; options.series[2].type = 'spline'; options.series[2].color = '#00cc00'; options.series[2].plotoptions = { spline: { marker: { enable: false } } }; if (chartdata["goalpointsdb"] != null) { if (goalrangedb != 0) { createseriesobjectrange(options.series, goalrangedb, "dbp goal", 3); } else { createseriesobjectrange(options.series, goalrangelimitdb, "dbp goal", 3); } } } } } else { chartname = "blood pressure"; subchartname = "heart rate"; yasislabe = "bpm"; if (chartdata["datapointshr"] != null) { //createseriesobject(options.series, factorehr, "heart rate", 0); options.series[0] = new object(); options.series[0].name = "heart rate"; options.series[0].data = factorehr; options.series[0].type = 'spline'; options.series[0].plotoptions = { spline: { marker: { enable: false } } }; if (chartdata["normalrangepointshr"] != null) { createseriesobjectrange(options.series, normalrangelimithr, "normal range heart rate", 1); } } } //chart information if (chartdata["datapointssb"] != null || chartdata["datapointshr"] != null || chartdata["datapointsdb"] != null) { //create chart container div // document.getelementbyid('container2').innerhtml = ""; $('#container2').highcharts({ chart: { plotbackgroundcolor: null, plotborderwidth: null, plotshadow: false, style: { color: "red", fontfamily: '\'lato\', sans-serif', lineheight: '18px', fontsize: '19px', fontweight: '900' } }, title: {//top message informaiton text: username + ", latest " + 10 + " reading ," + chartname + " - " + subchartname, x: -20 //center }, xaxis: { type: 'datetime', datetimelabelformats: { // don't display dummy year month: ' %e.%b \'%y', day: ' %e.%b' }, title: { text: '' } }, yaxis: { title: { text: "---" + yasislabe + "---" }, min: 0 }, plotoptions: { spline: { marker: { enabled: true } } }, series: options.series }); return false; } else { document.getelementbyid('container2').innerhtml = ""; document.getelementbyid('container2').innerhtml = "data not exist"; } }, error: function (xhr) { alert(json.stringify(xhr)); } }); } function factoresbrange(factorevaluearrayname, chartdataname, chartdata, loopvalue, normalrangename, normalarraygoalname, normalarraygoallimitname) { var loop = parseint(loopvalue); var dateinfo = chartdata[chartdataname][loop].date1.split("t"); var hour = dateinfo[1].split(":"); var hour1 = hour[0]; var min = hour[1]; var mydate = dateinfo[0].split('-'); var month = mydate[1]; var year = mydate[0]; var day = mydate[2]; var date = dateinfo[0] + " " + dateinfo[1], values = date.split(/[^0-9]/), yearnew = parseint(values[0], 10), monthnew = parseint(values[1], 10) - 1, daynew = parseint(values[2], 10), hoursnew = parseint(values[3], 10), minutesnew = parseint(values[4], 10), secondsnew = parseint(values[5], 10), formatteddatenew; formatteddatenew = new date(yearnew, monthnew, daynew, hoursnew, minutesnew, secondsnew); var newdate = formatteddatenew //var date = "2013-05-12 20:00:00", //var daty = parseint(day).tostring(); var daty = parseint(daynew).tostring(); var chartdatainfo = chartdata; factorevaluearrayname[loop] = []; factorevaluearrayname[loop][0] = date.utc(newdate.getfullyear(), newdate.getmonth(), daty); factorevaluearrayname[loop][1] = parseint(chartdata[chartdataname][loopvalue].value); datapointdate = date.utc(newdate.getfullyear(), newdate.getmonth(), parseint(daty)); var teampdata; if (datapointdate < teampdata) { datapointdate = teampdata; } else { teampdata = datapointdate; datapointdate = teampdata; } if (chartdata[normalrangename] != null) { var normaldata = chartdata[normalrangename]; if (datahr == 1) goalrangeinf(loop, normalarraygoalname, normalrangename, chartdatainfo, normalarraygoallimitname); else normalrangeinf(loop, normalrangename, normalarraygoalname, chartdatainfo); //normalrangeinf(loop, normalrangename, normalrangearray, chartdata) } }
thanks help. found answer. error occurred in factoresbrange of date invalid. safari browser take date invalid error. convert date below:
function factoresbrange(factorevaluearrayname, chartdataname, chartdata, loopvalue, normalrangename, normalarraygoalname, normalarraygoallimitname) { var loop = parseint(loopvalue); var dateinfo = chartdata[chartdataname][loop].date1.split("t"); var hour = dateinfo[1].split(":"); var hour1 = hour[0]; var min = hour[1]; var mydate = dateinfo[0].split('-'); var month = mydate[1]; var year = mydate[0]; var day = mydate[2]; var date = dateinfo[0] + " " + dateinfo[1], values = date.split(/[^0-9]/), yearnew = parseint(values[0], 10), monthnew = parseint(values[1], 10) - 1, daynew = parseint(values[2], 10), hoursnew = parseint(values[3], 10), minutesnew = parseint(values[4], 10), secondsnew = parseint(values[5], 10), formatteddatenew; formatteddatenew = new date(yearnew, monthnew, daynew, hoursnew, minutesnew, secondsnew); var newdate = formatteddatenew //var date = "2013-05-12 20:00:00", //var daty = parseint(day).tostring(); var daty = parseint(daynew).tostring(); var chartdatainfo = chartdata; factorevaluearrayname[loop] = []; factorevaluearrayname[loop][0] = date.utc(newdate.getfullyear(), newdate.getmonth(), daty); factorevaluearrayname[loop][1] = parseint(chartdata[chartdataname][loopvalue].value); datapointdate = date.utc(newdate.getfullyear(), newdate.getmonth(), parseint(daty)); var teampdata; if (datapointdate < teampdata) { datapointdate = teampdata; } else { teampdata = datapointdate; datapointdate = teampdata; } if (chartdata[normalrangename] != null) { var normaldata = chartdata[normalrangename]; if (datahr == 1) goalrangeinf(loop, normalarraygoalname, normalrangename, chartdatainfo, normalarraygoallimitname); else normalrangeinf(loop, normalrangename, normalarraygoalname, chartdatainfo); //normalrangeinf(loop, normalrangename, normalrangearray, chartdata) } }
in code given above newdate given error invalid date converted show in code , issue resolved.
Comments
Post a Comment