2009-09-05 5 views
0

J'ai une application MVC qui fonctionne bien avant. mais ça n'a plus marché sans changement. Assez confus.url.action ne fonctionne pas sur Vista/Windows 2008

Mon opinion a follwing lien hypertexte pour la validation de la saisie des données:

<span><a href="#" id="validate">Verify Input</a> </span> 

le code de validation est:

<script type="text/javascript">  
$(function(){ 
    $("#validate").click(function(){ 
     alert("Test 1"); 
     $.post("<%=Url.Action("SaveComment","MyVerify") %>", GetPageData(),ProcessResponse); 
      alert("Test 3"); 
    }); 
}); 

function GetPageData() { 
    return{ 
     FullName: $("#Name").val(), 
     ID: $("#ID").val() 
    }; 
} 

function ProcessResponse(data){ 
    alert("Test 2"); 
    if(validating()){    
      if(data=="true"){ 
       $("#VerifyMessageDiv").html("Your information is correct. "); 
       //... 

      } 
      else{ 
       $("#VerifyMessageDiv").html("Your information is not correct."); 
      //.... 

      } 
    }else{ 
    $("#myform").hide(); 
    } 
} 

//client side validation 
function validating() { 
    //... 
    alert("testing message"); 

    } 
</script> 

Logic est: utiliser la validation js à côté client tout d'abord, puis utilisez Controller MyVerify pour vérifier les données côté serveur. Il semble que l'appel d'action d'url échoue. J'ai "Test 1" et "Test 3", mais pas "Test 2", pas de "Message de test".

Le code fonctionne toujours sur XP avec VS2008, mais ne fonctionne pas sur Vista avec VS 2008, lorsque je déplace la version vers Windows 2008, ne fonctionne pas non plus.

Cela a fonctionné avant. Pas certain de pourquoi. Comment le réparer?

+0

Utilisez firebug pour confirmer que la requête envoyée au serveur était correcte et a reçu des réponses. – Cleiton

+0

merci. Avec le message de firebug, trouvez la raison et résolvez-la. C'est parce que la connexion à la base de données a échoué et que l'action a échoué. – KentZhou

Répondre

0

Lorsque vous déplaciez la construction, avez-vous assurez-vous que:

  1. VS2008 a été mis à jour SP1
  2. ASP.NET MVC a été installé.
  3. .NET Framework a été installé et mis à jour vers la version 3.5 SP1.

L'URL est-elle correctement rendue? Mettez-vous juste le code de validation dans un fichier JS, ou est-ce dans une vue. Si c'est le premier, alors vous devrez le déplacer, car vous ne serez pas en mesure de rendre l'Url.Action sur la ligne 4.

Questions connexes