+ -
当前位置:首页 → 问答吧 → django程序国际化ajax出错

django程序国际化ajax出错

时间:2010-02-01

来源:互联网

我国际化了django程序,为什么ajax出错呢,ajax用的是python支持的simplejson
views.py代码:
from django.http import HttpResponse
from django.utils.translation import ugettext as _

def input(request):
  input = request.REQUEST["input"]
  return HttpResponse(_('<p>You input is "%s"</p>') % input)

def json(request):
  a = {'head':(unicode(_('Name'), 'utf-8'), unicode(_('Telphone'), 'utf-8')),
  'body':[(u'张三', '1111'), (u'李四', '2222')]}

  import simplejson
  return HttpResponse(simplejson.dumps(a)) 

js代码:
function submit(){
  var form = $("form");
  var d = doSimpleXMLHttpRequest('/ajax/input/', form);
  d.addCallbacks(onSuccess, onFail);
}
onSuccess = function (data){
  var output = $("output");
  output.innerHTML = data.responseText;
  showElement(output);
}
onFail = function (data){
  alert(data);
}
function callJson(){
  var d = loadJSONDoc('/ajax/json/');
  d.addCallbacks(onSuccessJson, onFail);
}
row_display = function (row) {
  return TR(null, map(partial(TD, null), row));
}
onSuccessJson = function (data){
  var output = $("output");
  table = TABLE({border:"1"}, THEAD(null, row_display(data.head)),
  TBODY(null, map(row_display, data.body)));
  replaceChildNodes(output, table);
  showElement(output);
}
function init() {
  var btn = $("submit");
  btn.onclick = submit;
  var output = $("output");
  hideElement(output);
  var btn = $("json");
  btn.onclick = callJson;
}


addLoadEvent(init);

请高手帮帮忙

作者: hxpjava1   发布时间: 2010-02-01

自己解决,解决方法,把unicode函数去掉

谁来踩个脚印,我给分

作者: hxpjava1   发布时间: 2010-02-04

谁来顶下我散分

作者: hxpjava1   发布时间: 2010-02-07

还没有给分吗,您是对的.

作者: huyoo   发布时间: 2011-02-25