2013-09-17 3 views
1

Мой скрипт - это простая поисковая машина, где я обрабатываю запросы, предложения и результаты. При наборе текста скрипт перестраивает список предложений по событиям с ключами.backbone.js как добавление кириллических символов в маршруты

У меня есть три маршрута: "", "search/:query" и "answerQuestion/:id/:step". При нажатии на запрос скрипт переходит на маршрут "search/:query". Так что это часть кода:

AnswerMachine.Views.Suggestion = Backbone.View.extend({ 
    tagName: 'div', 
    className: 'suggestion-item alert alert-info', 
    events: { 
     'click': 'setQuery', 
    }, 
    setQuery: function() {  
     //Сохраняем навигацию 
     Backbone.history.navigate("search/" + this.model.get('title')); 
     return this; 
    }, 
    render: function() { 
     this.$el.attr('id', this.model.get('id') + '_suggestion'); 
     //Записываем текст внутрь 
     this.$el.html(this.model.get('title')); 
     //Возвращаем наш объект 
     return this; 
    } 
}); 

Но когда я нажимаю на предложение, например: Что тут происходит?, он перенаправляет меня на адрес: /#search/'B>%20BCB%[email protected]>8AE>48B?. Так в чем проблема? Не поддерживает ли Backbone.js кириллические символы?

+0

Кажется работать http://jsfiddle.net/nikoshr/DFeWR/ и http://fiddle.jshell.net/nikoshr/DFeWR/show/ Проблема с кодировкой при сохранении файла? – nikoshr

+0

Нет, когда я нажал сюда: [jsfiddle.net/nikoshr/DFeWR](http://jsfiddle.net/nikoshr/DFeWR) string 'Что тут происходит?' эта строка записывается в журнал: 'B> BCB? @> 8AE> 48B?' – XenoneX

+0

Возможно, это потому, что я использую Safari? – XenoneX

ответ

0

Я попробовал метод escape, но когда я попробовал функцию encodeURI() и decodeURI(), она запускается во всех браузерах!

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