编辑fancybox ajax请求的标头

时间:2019-05-29 12:50:22

标签: jquery ajax http-headers fancybox

您好,我正在尝试打开fancybox时更改ajax请求标头。 到目前为止,即使按照文档,我似乎也无法使其正常工作。在声明类型为ajax之后,我应该能够根据jquery文档编辑ajax。

到目前为止它确实有效,没有这样的标题(点击事件中的所有内容都位于jQ内)

$.fancybox.open( $(this), {
        type: 'ajax',
        helpers: {
            overlay: {
                locked: false
            }
        }
    });

当我尝试更改ajax请求时出现问题。这是我尝试过的,不起作用

$.fancybox.open({
            type: 'ajax',
            ajax: {
                url: siteUrl + href,
                type: 'GET',
                headers: {
                    'fooheader' : 'bar'
                }
            },
            helpers: {
                overlay: {
                    locked: false
                }
            }
        });

当我执行以前的代码时,会发生什么事,它会将我重定向到我单击的同一页面。

有人在fancybox ajax请求中添加标头有经验吗?

2 个答案:

答案 0 :(得分:0)

该脚本合并了ajax选项,并在设置和一切正常的情况下传递给jQuery ajax方法http://api.jquery.com/jquery.ajax/

答案 1 :(得分:0)

在fancybox ajax请求内添加标头:

<a href="javascript:void(0);" id="linkName" class="fancybox" >Fancybox Link Name</a>

 <script type="text/javascript">
      $(document).ready(function() {
        var name = "This is text that will be send into ajax request";              
        $("#linkName").click(function() {
          $.fancybox.showLoading(); //Loader before the ajax request
          $.ajax({
              type : "POST",
            headers: {
                  'Authorization':'Basic xxxxxxxxxxxxx',
                  'X-CSRF-TOKEN':'xxxxxxxxxxxxxxxxxxxx',
                  'Content-Type':'application/json' },
            cache : false,
            url : "testfile.php",   //File url
            data  : 'myText=' + name, //Ajax requested data
            success : function(data) {
              $.fancybox(data);  //Get response into data variable
            }
          });
          return false;
        });
      });
    </script>