2014-10-29 45 views
0

,我有以下的jQuery重定向代码(使用jquery.redirect.js):jquery.redirect问题,工作在Chrome

jQuery.redirect plugin doc

 <script type='text/javascript'> 
     $ = jQuery.noConflict(); 
      $.redirect('https://direct.tranzila.com/hatunot/', {"sum":289,"pdesc":"1 x \u05d1\u05d2\u05d3 \u05d2\u05d5\u05e3 \u05dc\u05d1 \u05e9\u05de\u05e0\u05ea \u05e4\u05e8\u05d7\u05d5\u05e0\u05d9","contact":"\u05d8\u05dc \u05d1\u05d9\u05d3\u05e7\u05d4","company":"Personal","email":"[email protected]","phone":"555555","fax":"","address":"\u05d3\u05d2\u05db\u05d3\u05d2 \u05d3\u05d2\u05db\u05d3\u05d2","city":"\u05d3\u05d2\u05db\u05d3\u05d2\u05db","remarks":"","currency":"1","myid":"","TranzilaToken":"orGzf5G2ZQ3LTNlbiepXc1l4O6ll3Rln9yQG_PLUS_17mV06u8iwZkBGz_SLASH_v97O1_SLASH_jzBXgl0LW_SLASH_jstL_SLASH_ywDjepwyuCS0YBYTkEPUtrqwJsNQrNZUQ_EQUALS_","orderid":1801,"cred_type":"1"}, 'POST')   </script> 

完全在Chrome和浏览器用所有参数重定向到上述地址,但不会与Firefox重定向。

我创建了一个简单的测试页面 - http://mydayshop.co.il/test.php - 可以在IE/Chrome中使用,但不能在Firefox中使用。

未在控制台/萤火虫中记录错误。

Firefox不重定向会出现什么情况?

+0

https://github.com/mgalante/jquery.redirect/blob/master/jquery.redirect.js – bzed 2014-10-29 18:09:00

回答

0

jquery.redirect.jsjQuery(html, attributes)方式不适用于Firefox。

我修改了代码&现在您的问题可以使用jquery.redirect.js修改后的版本是固定的:

/* jQuery POST/GET redirect method 
    v.0.1 
    modified by Miguel Galante,https://github.com/mgalante 
    v.0.1 
    made by Nemanja Avramovic, www.avramovic.info 
    */ 

;(function($){ 

    $.redirect = function(target, values, method) { 

     method = (method && method.toUpperCase() == 'GET') ? 'GET' : 'POST'; 

     if (!values) 
     { 
      var obj = $.parse_url(target); 
      target = obj.url; 
      values = obj.params; 
     } 

     var form = $('<form>'); 
      form.attr('method', method); 
      form.attr('action', target); 

     for(var i in values) 
     { 
      var input = $('<input>'); 
       input.attr('type', 'hidden'); 
       input.attr('name', i); 
       input.attr('value', values[i]); 
       input.appendTo(form); 

     } 



     $('body').append(form); 
    //console.log(form); 
    form.submit(); 
    }; 

    $.parse_url = function(url) 
    { 
     if (url.indexOf('?') == -1) 
      return { url: url, params: {} } 

     var parts = url.split('?'); 
     var url = parts[0]; 
     var query_string = parts[1]; 

     var return_obj = {}; 
     var elems = query_string.split('&'); 

     var obj = {}; 

     for(var i in elems) 
     { 
      var elem = elems[i]; 
      var pair = elem.split('='); 
      obj[pair[0]] = pair[1]; 
     } 

     return_obj.url = url; 
     return_obj.params = obj; 

     return return_obj;  
    } 
})(jQuery); 
+0

我向console.log添加了评论,并复制/粘贴了您显示的整个脚本,但没有骰子。仍然不会与Firefox重定向。你可以看到测试页面http://mydayshop.co.il/test.php – bzed 2014-10-29 18:14:35

+0

这是工作:http://jsfiddle.net/2hdgtsgf/3/ – 2014-10-29 18:23:10

+0

谢谢我的朋友,它确实有效,我的错误。我添加了标记,然后它开始使用测试文件。 – bzed 2014-10-29 18:32:44