2014-05-14 3 views
0

j'ai l'intérieur de mon point de vue de rasoir script suivant: -Prévenir appeler un getJSON si la valeur est nulle

var idRack = $("#Firewall_RackID").val(); 
     $.getJSON("@Url.Content("~/Firewall/LoadDataCenterANDZoneByRack")", { id: idRack }, 
     function (RackData) { 
      var select = $("#Firewall_TMSRack_DataCenter_Name"); 

qui appelle la méthode suivante: -

public JsonResult LoadDataCenterANDZoneByRack(int id) 
     { 
      var rack = repository.AllIncludingRack_single(id,a=>a.DataCenter,a=>a.Zone); 
      string datacentername = rack.DataCenter.Name; 
      string zonename = rack.Zone.Name; 

      var Data = new { DCValue = datacentername, ZValue = zonename }; 

      return Json(Data, JsonRequestBehavior.AllowGet); 
     } 

le problème que je suis confronté est que dans le cas où la liste déroulante Firewall_RackID n'est pas sélectionnée (chaîne vide), j'obtiendrai l'erreur suivante, lorsque je vérifie les scripts en utilisant les outils firebug: -

500 Erreur de serveur interne

Alors, peut-on adiver, comment empêcher le getJSON, d'être appelé incase le var idRack est nul ou vide? Merci

+0

Alors pourquoi ne vérifiez-vous pas si elle est sélectionnée? – jsedano

Répondre

2

Une déclaration if?

var idRack = $("#Firewall_RackID").val(); 
if (idRack != null || idRack != "") { 
    //AJAX 
} 
+1

Tricky code! :) –

+0

@tymeJV J'ai essayé ceci si (idRack) et cela a fonctionné, je ne sais pas si c'est différent de votre approche? –

Questions connexes