Maison > interface Web > js tutoriel > Comment utiliser la publication jQuery pour transmettre des données contenant des caractères spéciaux

Comment utiliser la publication jQuery pour transmettre des données contenant des caractères spéciaux

亚连
Libérer: 2018-05-24 16:05:57
original
2256 Les gens l'ont consulté

Dans jquery, nous utilisons généralement $.ajax ou $.post pour résoudre le traitement du transfert de données, mais les caractères spéciaux ne sont généralement pas autorisés ici, tels que : "<". passez ceci Pour les données contenant des caractères spéciaux, les amis intéressés devraient y jeter un œil

Dans jQuery, nous utilisons généralement $.ajax ou $.post pour le traitement du transfert de données, mais les caractères spéciaux ne peuvent généralement pas être transférés ici, comme comme : " &Lt ;". Cet article explique comment transmettre ce type de données contenant des caractères spéciaux.

1. Préparez la page et le code de contrôle

Le code de la page est le suivant :

<script type="text/javascript">
  $(function() {
      $("#btnSet").click(function() {
        var a = $("#txtValue").val();
        var data = { Name: a };
        alert(data);
        $.ajax({
          url: &#39;@Url.Action("MyTest")&#39;,
          type: &#39;post&#39;,
          dataType: &#39;json&#39;,
          data: data,
        });
      });
    }
  );
</script>
<h2>Index</h2>
<input type="text" id="txtValue"/><input type="button" value="设置" id="btnSet"/>
Copier après la connexion

Le code d'arrière-plan est le suivant :

  public ActionResult MyTest(StudentInfo stu)
    {
      return Content("OK");
    }
Copier après la connexion

où StudentInfo est défini comme suit :

  public class StudentInfo
  {
    public string Name { get; set; }
  }
Copier après la connexion


2. Test de transfert de données

Lorsque nous transmettons des données ordinaires , tout est normal.

Mais lorsque des données contenant des caractères spéciaux sont saisies, elles ne peuvent pas être transmises normalement en arrière-plan.

3. Méthode de traitement

Si vous êtes sûr de transmettre des caractères spéciaux, vous devez ajuster le code jQuery Le code de requête ajusté est le suivant :

<script type="text/javascript">
  $(function() {
      $("#btnSet").click(function() {
        var a = $("#txtValue").val();
        var data = JSON.stringify({ Name: a });
        alert(data);
        $.ajax({
          url: &#39;@Url.Action("MyTest")&#39;,
          type: &#39;post&#39;,
          dataType: &#39;json&#39;,
          data: data,
          contentType: &#39;application/json&#39;
        });
      });
    }
  );
</script>
Copier après la connexion

Il y a deux ajustements principaux :

Sérialiser les données json à transmettre JSON.stringify
Nouveau dans la requête $.ajax ajouté paramètres : contentType:'application/json'

Ce qui précède est ce que j'ai compilé pour tout le monde. J'espère que cela sera utile à tout le monde à l'avenir.

Articles connexes :

Les données de soumission asynchrone Ajax renvoient un exemple de valeur d'analyse du problème de nouvelle ligne

La requête Ajax renvoie des données Problème de séquence analyse

Solution pour éviter l'envoi répété de requêtes Ajax

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal