Ho un numero di oggetti cliccabili sullo schermo che rappresentano oggetti all'interno di un pezzo di software interfacciato tramite un componente COM.jQuery Funzione AJAX - lancio di Chrome "Uncaught SintassiErrore: numero inaspettato"
Quando faccio clic su un oggetto, invio il nome dell'oggetto, l'ID di sessione e il comando che voglio eseguire.
Il codice per il particolare comando che sto cercando di attuare è una pagina ASP.NET C# base:
case "myClick":
dynamic simObj = S8COM.get_SimObject(Request["id"]);
responseData = "{name:" + simObj.Name.ToString() + ",countInRoutes:" + simObj.CountInRoutes.ToString() + ",countOutRoutes:" + simObj.CountOutRoutes.ToString() + ",index:" + simObj.Index.ToString() + ",capacity:" + simObj.Capacity.ToString() + ",completed:" + simObj.Completed.ToString() + ",routeOutMethod:" + simObj.RouteOutMethod.ToString() + "}";
break;
Questo funziona bene per alcuni oggetti, ma non altri, lanciando un "SyntaxError Uncaught: "Numero imprevisto".
Il JS Io uso per chiamare questa particolare funzione è:
S8Web.Requestmanager.makeRequest({ data: { command: "myClick", id: aItem.id }, async: true, callback: function(data){
alert(data.CountInRoutes); //Do a vardump of the response
}});
Un paio di risposte così, il primo funziona bene, mentre il secondo genera l'eccezione numero inaspettato:
jsonp1319203225074({name:Start,countInRoutes:0,countOutRoutes:1,index:5,capacity:0,completed:0,routeOutMethod:4});
jsonp1319203225066({name:Process 1,countInRoutes:1,countOutRoutes:1,index:1,capacity:1,completed:0,routeOutMethod:1});
L'unica cosa che posso vedere che potrebbe influenzare il risultato è lo spazio bianco tra "Processo" e "1". È questo che sta generando questo errore?
è solo nel browser Chrome che genera questo errore? –
sì ... poiché è una stringa è necessario avvolgerla tra virgolette .. 'nome: 'Processo 1'' –