2016-01-11 2 views
0

Я передаю некоторые параметры с одной страницы на другую через сеанс, проблема в том, с чем я столкнулся, каждый параметр получает отражение в URL-адресе, что, я думаю, не является правильным. Поэтому я хочу удалить все параметры из URL-адреса, перейдя на другую страницу.Удаление параметров URL

Пожалуйста, предложите мне какой-то способ архивирования.

Это URL, что я получаю

http://localhost:58736/index.html#bankedit//10000422%20%20%20%20%20%20%20%20%20%20%20%20?PayeeId=4&BankName=State%20Bank%20%20 

код, что я использую для навигации является:

cellTemplate: function (container, options) {$('<a/>').addClass('hyperlink') 
     .text('Edit |') 
     .on('click', function() { 
      var Edit; 
      Demo.app.navigate("bankedit/?AccountNumber=" + options.data.AccountNumber + "&PayeeId=" + options.data.PayeeId + "&BankName=" + options.data.BankName); 
      sessionStorage.setItem('AccountNumber', options.data.AccountNumber); 
      sessionStorage.setItem('PayeeId', options.data.PayeeId); 
      sessionStorage.setItem('BankName', options.data.BankName); 
      sessionStorage.setItem('Type', "Edit"); 
     }).appendTo(container); 

     $('<a/>').addClass('hyperlink') 
      .text(' Delete') 
      .on('click', function() { 
        options.component.removeRow(options.rowIndex); 
      }).appendTo(container); 
    } 

И для извлечения значений параметров:

sessionStorage.getItem("BankName"), 

в bankedit.js страница

+0

Вы имеете в виду на целевой странице он должен показывать только базовый URL, например * локальный/index.html *, а не другие параметры? – TheVillageIdiot

+0

Да точно, что я не могу реализовать – vishal

ответ

0

Извините за задержку. Вы можете попробовать API history для управления URL-адресом, указанным в браузере.

попробовать следующие разы загрузки осуществляются:

var orig=document.location.href; 
var noParam=urlWithoutParams.substring(0,urlWithoutParams.indexOf("#")); 

history.replaceState({'Original':orig},'',noParam); 

Это заменит текущий HREF с одним без каких-либо параметров строки запроса. Более подробную информацию об истории API находится здесь, в MDN docs

+0

Спасибо за ответ, я попытался реализовать это, но он не работает. Можете ли вы предложить мне другой способ выполнить так, как метод Post или что-то еще. – vishal

+0

Это одностраничное приложение? Вы переходите на страницу «bankedit» или происходит только изменение хэша (часть после #)? Если вы перейдете на следующую страницу, вам необходимо запустить этот материал истории на этой странице. – TheVillageIdiot

0

Tkanks много для обмена опытом. Я могу решить ее с помощью сеанса. Я только что заменил Demo.app.navigate("bankedit/?AccountNumber=" + options.data.AccountNumber + "&PayeeId=" + options.data.PayeeId + "&BankName=" + options.data.BankName); с PaMobile01.app.navigate("bankinformationedit/");

И сохранил остаток своих параметров в сессии

Смежные вопросы