2016-04-11 5 views
0

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

Итак, я делаю запрос AJAX, с питона скрипт на внутреннем интерфейсе:

$.ajax({                  
    url: BACK_END_LOC + 'get_search_results',         
    data: ({keyword1: keyword1,             
      keyword2: keyword2,             
      start_time: encodeURI(start_time),         
      end_time: encodeURI(end_time),          
      dataset: $("#dataset").val()          
      }),                 

    success: function(data) {             
     response = eval('(' + data + ')');          
     if (response.error_code == 0) {           
      render_event_search_results(response.data);       
     } else {                
     alert('Error_code:' + response.error_code + ', Error_msg:' + response.error_msg); 
     }                  
    }, 

Python возвращается в JSON объект:

def get_search_results(req, keyword1, keyword2, start_time, end_time, dataset): 
s = keyword1 + "," + keyword2 

# get filtered events 
results = get_filtered_events(dataset, keyword1, keyword2, start_time, end_time) 

try: 
    r = {'error_code': 0, 'error_msg': 'OK', 'data': results} 

except Exception, e: 
    raise e 
    r = {'error_code': 1, 'error_msg': 'Oops'} 

return simplejson.dumps(r) 

Теперь, одно поле этого объекта имеет специальные символы , Когда я пытаюсь напечатать это поле в html «alert (gEvents [0] .signature»), он печатается как: \ u0432 \ u0438 \ u0434 \ u0435 \ u043e_storm

Как я могу напечатать его как: видео_storm , который является фактическим текстом.

ответ

0

заменить

return simplejson.dumps(r) 

с

return simplejson.dumps(r,ensure_ascii=False) 
+0

Спасибо, хотя он работал с signature_str.decode ('юникода-побег'). –

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