2013-03-24 6 views
1

Я изучает технику: История API PushState (HTML5)PushState: Как добавить строку запроса без перенаправления

мне нужна команда для работы URL-адрес withput перенаправлять потому что у меня есть CherryPy сервера.

Я не могу передавать данные с Cherrypy (с шаблоном Мако на Javascript), но я хочу изменить URL.

Старый Url является

file:///media/DATA/prototypefin4/s.html 

и автоматическое добавление foo=1&foo=2 (переменная S) в URL-адрес с History.pushState

file:///media/DATA/prototypefin4/s.html?=foo=1&foo=2 

Но как?

Мой код:

<!DOCTYPE HTML> 
<html> 
<head> 
<title>Example - History API pushState</title> 
</head> 
<script src="http://balupton.github.com/history.js/vendor/jquery.js"></script> 
<script src="http://balupton.github.com/history.js/scripts/bundled/html4+html5/jquery.history.js"></script> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script> 
<body> 

<input id = 'button1' type = 'button' value = 'history.pushState' onclick="updateHistory()"/> 

<script type = 'text/javascript'> 

var count ="?foo=1&foo=2"; 

function updateHistory() 
{ 

History.pushState(count,null,file:///media/DATA/prototypefin4/s.html); 

} 

</script> 

</body> 
</html> 
+0

Возможно ли это? Я вижу некоторые из них. –

+1

Я думаю, что возможная ошибка на History.pushState (count, null, file: ///media/DATA/prototypefin4/s.html); Потому что в аргоменте есть комментарий Я работаю с моим компьютером без сервера. Какое решение? –

+0

«Я работаю с моим компьютером без сервера. Какое решение?» - Установите [Apache] (http://httpd.apache.org/). – Quentin

ответ

2

Ваш скрипт синтаксически неверен. В соответствии с the docs, будут указаны следующие параметры:

History.pushState(null, "", "file:///media/DATA/prototypefin4/s.html"+count);