AnsweredAssumed Answered

Error message: Script error. URL: http://js.arcgis.com/3.14/

Question asked by meenu.monu on Sep 27, 2015
Latest reply on Sep 29, 2015 by meenu.monu

Hi All, Advance Thanks.

 

HTML code attached here with.I am very new in JSAPI. All suggestions valuable .

 

First time the  web application is working fine. But when I do refresh page more than two times Firefox showing an error stated below and map is getting blank n white colour .Wts the issue? Is it require to unload map each time???

The error below

Error message: Script error. URL: http://js.arcgis.com/3.14/   Line Number: 0

 

2.When click Lastpostion button 3 graphics will add on the map. Is it possible to add a line(polyline)  with arrow from

pointGraphic to  pointGraphic2 and and from pointGraphic2 to pointGraphic3?Can anyone help me with the code????

 

 

 

 

Code below

 

 

<!DOCTYPE html>

<html>

<head>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

  <!--The viewport meta tag is used to improve the presentation and behavior

  of the samples on iOS devices-->

  <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">

  <title>Basemap Gallery - Bing Maps</title>


 
<link rel="stylesheet" href="http://js.arcgis.com/3.14/dijit/themes/claro/claro.css">

  <link rel="stylesheet" href="http://js.arcgis.com/3.14/esri/css/esri.css">


 
<style type="text/css">

  html,
  body,
  #mapDiv {
  padding: 0;
  margin: 0;
  height: 100%;
  z-index: -1;
  -moz-border-radius: 4px;
  overflow: hidden;
  }

  .claro .dijitButtonText {
  color: #03c;
  font-family: Arial, Helvetica, sans-serif font-weight: bold;
  }

  .claro td.dijitMenuItemLabel {
  color: #03c;
  font-family: Arial, Helvetica, sans-serif font-weight: 500;
  }

  .auto-style1 {}

  .auto-style2 {
  height: 20px;
  }

  .auto-style3 {
  height: 20px;
  }

  .auto-style6 {
  height: 2%;
  width: 279px;
  }

  .auto-style7 {
  width: 279px;
  }

  #TxtAltareeqEng {
  width: 55px;
  }

  #TxtAltareeqEng0 {
  width: 55px;
  }
 
</style>


 
<script type="text/javascript" src="http://js.arcgis.com/3.14/"></script>

  <!--<script src="Scripts/jquery-2.1.1.js" type="text/javascript"></script>-->

  <script type="text/javascript">

  window.onerror = function (msg, url, linenumber) {
  alert('Error message: ' + msg + '\nURL: ' + url + '\nLine Number: ' + linenumber);
  return true;
  }

  var map, basemapGallery;
  require([
  "esri/map",
  "esri/graphic",
  "esri/layers/ArcGISDynamicMapServiceLayer",
  "esri/layers/GraphicsLayer",
  "esri/geometry/Extent",
  "esri/geometry/Point",
  "esri/symbols/PictureMarkerSymbol",
  "esri/InfoTemplate",
  "esri/dijit/Basemap",
  "esri/dijit/BasemapGallery",
  "esri/dijit/BasemapLayer",
  "esri/graphicsUtils",
  "dojo/_base/array",
  "dojo/parser",
  "dojo/dom",
  "dojo/_base/lang",
  "dijit/MenuItem",
  "dijit/Menu",
  "dijit/layout/ContentPane",
  "dijit/form/Button",
  "dijit/form/RadioButton",
  "dijit/form/DropDownButton",
  "dojo/domReady!"
  ],
  function (
  Map,
  Graphic,
  ArcGISDynamicMapServiceLayer,
  GraphicsLayer,
  Extent,
  Point,
  PictureMarkerSymbol,
  InfoTemplate,
  Basemap,
  BasemapGallery,
  BasemapLayer,
  graphicsUtils,
  array,
  parser,
  dom,
  lang,
  MenuItem
  ) {
  parser.parse();

  var TareeqENG, TareeqARB;
  var graphicsLayer;
  var AltareeqArb, AltareeqEng;

  /*Manually define the maps LODs*/
  var lods = [
  {
  "level": 0,
  "resolution": 156543.03392800014,
  "scale": 5.91657527591555E8
  },
  {
  "level": 1,
  "resolution": 78271.51696399994,
  "scale": 2.95828763795777E8
  },
  {
  "level": 2,
  "resolution": 39135.75848200009,
  "scale": 1.47914381897889E8
  },
  {
  "level": 3,
  "resolution": 19567.87924099992,
  "scale": 7.3957190948944E7
  },
  {
  "level": 4,
  "resolution": 9783.93962049996,
  "scale": 3.6978595474472E7
  },
  {
  "level": 5,
  "resolution": 4891.96981024998,
  "scale": 1.8489297737236E7
  },
  {
  "level": 6,
  "resolution": 2445.98490512499,
  "scale": 9244648.868618
  },
  {
  "level": 7,
  "resolution": 1222.992452562495,
  "scale": 4622324.434309
  },
  {
  "level": 8,
  "resolution": 611.4962262813797,
  "scale": 2311162.217155
  },
  {
  "level": 9,
  "resolution": 305.74811314055756,
  "scale": 1155581.108577
  },
  {
  "level": 10,
  "resolution": 152.87405657041106,
  "scale": 577790.554289
  },
  {
  "level": 11,
  "resolution": 76.43702828507324,
  "scale": 288895.277144
  },
  {
  "level": 12,
  "resolution": 38.21851414253662,
  "scale": 144447.638572
  },
  {
  "level": 13,
  "resolution": 19.10925707126831,
  "scale": 72223.819286
  },
  {
  "level": 14,
  "resolution": 9.554628535634155,
  "scale": 36111.909643
  },
  {
  "level": 15,
  "resolution": 4.77731426794937,
  "scale": 18055.954822
  },
  {
  "level": 16,
  "resolution": 2.388657133974685,
  "scale": 9027.977411
  },
  {
  "level": 17,
  "resolution": 1.1943285668550503,
  "scale": 4513.988705
  },
  {
  "level": 18,
  "resolution": 0.5971642835598172,
  "scale": 2256.994353
  },
  {
  "level": 19,
  "resolution": 0.29858214164761665,
  "scale": 1128.497176
  },
  {
  "level": 20,
  "resolution": 0.1492910708238083,
  "scale": 564.248588
  },
  {
  "level": 21,
  "resolution": 0.0746455354119042,
  "scale": 282.124294
  }
  ];

  map = new Map("mapDiv", {
  center: [6.389, 36.054],
  zoom: 4,
  lods: lods
  });
  createBasemapGallery();

  dijit.byId("radioOne").on("change", function (isChecked) {
  if (isChecked) {
  dijit.byId("LnkLastPosition").set("label", "LastPosition");
  dijit.byId("LnkTracking").set("label", "Tracking");
  }
  }, true);

  dijit.byId("radioTwo").on("change", function (isChecked) {
  if (isChecked) {
  dijit.byId("LnkLastPosition").set("label", "الموقف الأخير");
  dijit.byId("LnkTracking").set("label", "التتبع");
  }
  }, true);

  dijit.byId("LnkLastPosition").on("click", LastPosClick);
  dijit.byId("LnkTracking").on("click", LastPosClick);

  function createBasemapGallery() {
  AltareeqEng = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer";
  AltareeqArb = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer";

  //Manually create a list of basemaps to display
  var basemaps = [];

  /*Add the your basemaps is reverse order. We need the Bing basemap loaded first in the BasemapGallery
  we will latter reverse the array so that it lists in the order you want*/
  BingMapsHybrid = new Basemap({
  layers: [new BasemapLayer({
  type: "BingMapsHybrid"
  })],
  id: "bmHybrid",
  title: "BingMaps-Aerial-Labels"
  });
  basemaps.push(BingMapsHybrid);

  BingMapsAerial = new Basemap({
  layers: [new BasemapLayer({
  type: "BingMapsAerial"
  })],
  id: "bmAerial",
  title: "BingMaps-Aerial"
  });
  basemaps.push(BingMapsAerial);

  BingMapsRoad = new Basemap({
  layers: [new BasemapLayer({
  type: "BingMapsRoad"
  })],
  id: "bmRoad",
  title: "BingMaps-Road"
  });
  basemaps.push(BingMapsRoad);

  TareeqARB = new Basemap({
  layers: [new ArcGISDynamicMapServiceLayer(AltareeqArb)],
  id: "TareeqARB",
  title: "Al-Tareeq(AR)"
  });
  basemaps.push(TareeqARB);

  TareeqENG = new Basemap({
  layers: [new ArcGISDynamicMapServiceLayer(AltareeqEng)],
  id: "TareeqENG",
  title: "Al-Tareeq(ENG)"
  });
  basemaps.push(TareeqENG);

  basemapGallery = new BasemapGallery({
  showArcGISBasemaps: false,
  basemaps: basemaps,
  bingMapsKey: "yourbingkey",
  map: map
  });
  basemapGallery.startup();

  graphicsLayer = new GraphicsLayer();
  map.addLayer(graphicsLayer);

  //BasemapGallery.startup isn't needed because we aren't using the default basemap, instead
  //we are going to create a custom user interface to display the basemaps, in this case a menu.
  array.forEach(basemapGallery.basemaps.reverse(), function (basemap) {
  //Add a menu item for each basemap, when the menu items are selected
  dijit.byId("bingMenu").addChild(new MenuItem({
  label: basemap.title,
  onClick: lang.hitch(this, function () {
  this.basemapGallery.select(basemap.id);
  })
  }));
  });
  /*Select that basemap that you want to be initially displayed*/
  basemapGallery.select(TareeqENG.id);
  }

  function LastPosClick() {
  map.infoWindow.hide();
  var colourstyle = "images/sphere-blue-dark-16x16.png"
  var Status = "status";
  var procname = "procname";
  var location = "location";
  var Driver = "Drv";
  var strhotspot = "strhotspot";
  var geomPoint1 = new Point(58.46236, 23.61581);
  var geomPoint2 = new Point(59.46236, 23.61581);
  var geomPoint3 = new Point(60.43362666666, 23.583081666666);
  var symbol = new PictureMarkerSymbol({
  "url": colourstyle,
  "height": 16,
  "width": 16,
  "type": "esriPMS"
  });

  var infoTemplate = new InfoTemplate();
  infoTemplate.content = strhotspot;
  var pointGraphic = new Graphic(geomPoint1, symbol);
  var pointGraphic2 = new Graphic(geomPoint2, symbol);
  var pointGraphic3 = new Graphic(geomPoint3, symbol);
  pointGraphic.setInfoTemplate(infoTemplate);
  pointGraphic2.setInfoTemplate(infoTemplate);
  pointGraphic3.setInfoTemplate(infoTemplate);
  graphicsLayer.add(pointGraphic);
  graphicsLayer.add(pointGraphic2);
  graphicsLayer.add(pointGraphic3);
  setextent();
  var DivesriLogoImage = dom.byId('DivesriLogoImage');
  var mapDiv = dom.byId('mapDiv');
  mapDiv.style.visibility = "visible";
  DivesriLogoImage.style.visibility = "hidden";
  }

  function setextent() {
  var gextent = graphicsUtils.graphicsExtent(graphicsLayer.graphics).expand(1.2);
  map.setExtent(gextent);
  }
  });
 
</script>

</head>


<body class="claro">

  <!--style="background-image: url('Images/menubackground.png');"-->

  <form id="form1" >

   <div style="width: 100%; height: 100%">

   <table id="Tablecontrols0" style="font-size: 15px; z-index: 101; background-color: #5B748B; width: 100%; height: 100%;">

   <tr style="font-family: Times New Roman">

   <td style="border-style: none; background-color: #496277; " valign="top" class="auto-style6">

   <input type="radio" data-dojo-type="dijit/form/RadioButton" name="uilanguage" id="radioOne" checked value="English"/><label for="radioOne">English</label><br />

   <input type="radio" data-dojo-type="dijit/form/RadioButton" name="uilanguage" id="radioTwo" value="العربية"/><label for="radioTwo">العربية</label>

   </td>

   <td align="left" style="border-style: none; background-color: #496277; height: 2%;" valign="top" class="auto-style3">

   </td>

   </tr>

   <tr style="font-family: Times New Roman">

   <td style="border-style: none;" valign="top" bgcolor="#496277" class="auto-style7">

   <table id="Tablecontrols" style="border-color: #F2F0EE; font-size: 15px; z-index: 101;
  background-color: #496277; width:auto; height: 274px; font-family: verdana; color: tomato; font-weight: bold; border-top-style: none;
" align="left">

   <tr style="font-family: Times New Roman">

   <td rowspan="1" valign="top" height="10px" class="auto-style1">

   </td>

   <td rowspan="1" style="border-style: none;" valign="top" height="10px">

   </td>

   </tr>

   <tr style="font-family: Times New Roman">

   <td rowspan="1" style="font-weight: bold; " valign="top" height="10px" class="auto-style1">

   </td>

   <td rowspan="1" style="border-style: none;" valign="top" height="10px">

   </td>

   </tr>

   <tr style="font-family: Times New Roman">

   <td style="font-weight: bold; " valign="top" height="10" class="auto-style1" colspan="2">

   </td>

   </tr>

   <tr style="font-family: Times New Roman">

   <td style="font-weight: bold; text-align: center; " valign="top" class="auto-style2">

   <button dojotype="dijit/form/Button" id="LnkLastPosition" style="font-family: Arial; font-size: x-small; font-weight: normal">

  Last Position</button>

   </td>

   <td style="border-style: none; text-align: center;" valign="top" class="auto-style3">

   <button dojotype="dijit/form/Button" id="LnkTracking" style="font-family: Arial; font-size: x-small; font-weight: normal">

  Tracking</button>

   </td>

   </tr>

   <tr style="font-family: Times New Roman">

   <td colspan="2" rowspan="1" style="border-top: 2px solid #547289; border-bottom: 2px solid #547289; font-weight: bold; position: static;
  height: 100%; text-align: left; width: 30%; border-left-width: 2px; border-right-width: 2px;
" valign="top" align="left">

   <div id="Something"></div>

   <div style="width: 300px; height: 356px; overflow: scroll"></div>

   </td>

   </tr>

   </table>

   </td>

   <td style="border-style: none; background-color: white; width: 100%; height:100%;" valign="top" id="td11">

   <div id="mapDivdojotype="dijit/layout/ContentPane" region="center" style="border:1px solid #000; visibility: visible; height: 100%;">

   <div style="position:absolute; right:50px; top:100px; z-Index:99;">

   <button id="dropdownButton" label="Basemaps" data-dojo-type="dijit/form/DropDownButton">

   <div data-dojo-type="dijit/Menu" id="bingMenu">

   <!--The menu items are dynamically created using the basemap gallery layers-->

   </div>

   </button>

   </div>

   </div>

   <!--<asp:Image ImageUrl="Images/tareeq Logo1.jpg" ID="esriLogoImage" Height="495px" style="margin-right: 36px" Width="100%" />-->

   <div id="DivesriLogoImagestyle="background-color: #FFFFFF; width: 80%; height:99.8%; visibility: hidden; position: absolute; top: 72px;" align="center">

   <!--<asp:Image ID="esriLogoImage" ImageAlign="Middle" Height="564px" />-->

   </div>

   </td>

   </tr>

   </table>

   </div>

  </form>

</body>


</html>

Outcomes