首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery Ampersand (&)格式

jQuery Ampersand (&)格式
EN

Stack Overflow用户
提问于 2014-01-15 22:22:20
回答 3查看 1.7K关注 0票数 0

使用下面的脚本,我将从jQuery数据报警器获取日期值,并将其传递给jQuery AJAX调用。一切都正常,但是在AJAX中遇到了一个与符号有关的问题。

这是我的密码:

代码语言:javascript
复制
    <script type="text/javascript">
        $(document).ready(function(){

          $('#datepicker').datepicker({
           dateFormat: 'yy-mm-dd',
              onSelect: function (date) {

                //capture date values from datepicker  
                var date = date;
                var year = date.substr(0,4);
                var month = date.substr(5,2);
                var day = date.substr(8,2);
                var url = "http://www.example.com?view=week" + "&year=" + year + "&month=" + month + "&date=" + day;


                //ajax events load
                $.ajax({url: url ,success:function(result){
                  $("#ajaxEvents").html(result);
                }});

                //close datepicker
                $('#datepicker').toggle();
                $(this).toggleClass('close');

                return false;
          }

      })

    });
  </script>

当我使用fiddler检查AJAX请求时,您可以看到URL格式如下:

代码语言:javascript
复制
http://www.example.com?view=week&amp;year=2014&amp;month=01&amp;date=23

请注意,所有“&”字符都在URL中转换。为了使查询正确工作,我需要以下格式:

代码语言:javascript
复制
http://www.example.com?view=week&year=2014&month=01&date=23

有什么想法可以防止AJAX请求中的格式更改吗?

提前感谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-01-15 22:47:37

向jQuery ajax函数中添加数据元素

代码语言:javascript
复制
  data: { year: "2014", month: "Jan", date: "15" }

jquery将为您将其添加到URL中。

代码语言:javascript
复制
 //ajax events load
 $.ajax({url: url, data: { year: '"'+year+'"', month: '"'+month+'"', date: '"'+day+'"'} ,success:function(result){
 $("#ajaxEvents").html(result);
 }});
票数 1
EN

Stack Overflow用户

发布于 2014-01-15 22:33:33

使用ajax函数时,不应该在url中手动发送信息。试着像这样使用它:

代码语言:javascript
复制
var url = "http://www.example.com";
var data = "view=week" + "&year=" + year + "&month=" + month + "&date=" + day;

$.ajax({
       url: url ,
       success: function(result){$("#ajaxEvents").html(result);},
       data: data
});

我们要做的是将查询字符串分开,并使用data属性发送到ajax函数中。

票数 0
EN

Stack Overflow用户

发布于 2015-09-23 05:39:56

就我的情况而言,以下几点不起作用:

代码语言:javascript
复制
url: 'myAnalysis.php?fName='+fNameVal+'&lName='+lNameVal

所以,我用:

代码语言:javascript
复制
url: 'myAnalysis.php', data: { fName: fNameVal, lName: lNameVal}

开始起作用了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21149526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档