ホームページ > ウェブフロントエンド > jsチュートリアル > jQuery post を使用して特殊文字を含むデータを渡す方法

jQuery post を使用して特殊文字を含むデータを渡す方法

亚连
リリース: 2018-05-24 16:05:57
オリジナル
2264 人が閲覧しました

jquery では、通常 $.ajax または $.post を使用してデータ転送処理を解決しますが、通常、ここでは「<」などの特殊文字を渡すことは許可されません。この記事は、そのような文字を渡す方法を解決するのに役立ちます。興味のある友達は一緒に文字データを見てみましょう

jQueryでは通常、データ転送処理に$.ajaxや$.postを使用しますが、「<」などの特殊文字は通常使用できません。ここに転送されます。この記事では、このような特殊文字を含むデータを渡す方法を紹介します。

1. ページと制御コードを準備します

ページのコードは次のとおりです:

<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"/>
ログイン後にコピー

背景のコードは次のとおりです:

  public ActionResult MyTest(StudentInfo stu)
    {
      return Content("OK");
    }
ログイン後にコピー

ここでfoは定義されています次のように:

  public class StudentInfo
  {
    public string Name { get; set; }
  }
ログイン後にコピー


2. データ転送のテスト

通常のデータを転送すると、すべて正常に動作します。

ただし、特殊文字を含むデータを入力した場合、正常にバックグラウンドに渡すことができません。

3. 処理方法

特殊文字を確実に渡す場合は、jQuery コードを調整する必要があります。 調整されたリクエスト コードは次のとおりです。

<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>
ログイン後にコピー

調整のポイントは主に 2 つです。

正しく、渡された json データは JSON.stringify でシリアル化されます
$.ajax リクエストに新しいパラメーターを追加します: contentType:'application/json'

上記は私が皆さんのためにまとめたものです。未来のみんな。

関連記事:

Ajax非同期データ戻り値送信 行折り返し問題例分析

Ajaxリクエスト戻りデータの順序分析

Ajaxリクエストの重複送信を防ぐ解決策

以上がjQuery post を使用して特殊文字を含むデータを渡す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート