如何使代码点火器ajax请求URL显示在浏览器URL中。

时间:2016-07-23 18:04:16

标签: javascript jquery ajax codeigniter

我正在使用code-igniter framework。当我单击或选择以下panel1任意选项时,每次单击并选择我调用Ajax函数的事件,用户信息将显示在panel2 DIV标记中。 我无法在地址栏中看到完整的网址。如何在浏览器地址栏上显示ajax请求URL。

enter image description here

var ajaxUrl = '<?php echo base_url(); ?>' + 'main/userinfo/' + gender + '/' + age_min + '/' + age_max;
$.ajax({
  url: ajaxUrl,
  dataType: "JSON",
  type: "POST",
  success: function(retdata) {


  });

1 个答案:

答案 0 :(得分:1)

有很多文章,即使在这里也是如此,它解释了如何在不刷新页面的情况下更改地址栏的网址(例如,在执行ajax调用时)。基本思想是使用HTML5 History API(pushState())。类似的东西:

var ajaxUrl = '<?php echo base_url(); ?>' + 'main/userinfo/' + gender + '/' + age_min + '/' + age_max;
$.ajax({
  url: ajaxUrl,
  dataType: "JSON",
  type: "POST",
  success: function(retdata) {

   window.history.pushState({"html":retdata.html,"pageTitle":retdata.pageTitle},"", ajaxUrl);
  });

此libaray还有一个polyfill,名为history.js,适用于旧浏览器。