• 技术文章 >web前端 >js教程

    如何利用jQuery post传递含特殊字符的数据

    亚连亚连2018-05-24 16:05:57原创1113
    在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: '@Url.Action("MyTest")',
              type: 'post',
              dataType: 'json',
              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");
        }

    其中StudentInfo定义如下:

      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: '@Url.Action("MyTest")',
              type: 'post',
              dataType: 'json',
              data: data,
              contentType: 'application/json'
            });
          });
        }
      );
    </script>

    调整的地方主要有两点:

    对要传递的json数据作序列化JSON.stringify
    在$.ajax请求中新增参数:contentType:'application/json'

    上面是我整理给大家的,希望今后会对大家有帮助。

    相关文章:

    Ajax异步提交数据返回值的换行问题实例分析

    ajax请求之返回数据的顺序问题分析

    防止重复发送Ajax请求的解决方案

    以上就是如何利用jQuery post传递含特殊字符的数据的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:jQuery post 传递
    上一篇:使用前端方法实现图片转字符画 下一篇:JS数组方法使用步骤详解
    Web大前端开发直播班

    相关文章推荐

    • Angular如何对请求进行拦截封装?• 怎么获取Node性能监控指标?获取方法分享• react如何实现hooks?必须依赖 Fiber 么?• 浅析Angular中怎么用 Api 代理• ie8是否支持es6

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网