我在使用Djajaxice国际字符的问题...问题和Django/Dajaxice和国际字符
我有Django模板......在模板如下选择:
<select name="region" id="id" onchange="Dajaxice.crc.regions('my_callback',{'data':this.value});">
<option value="" selected="selected" ></option>
{% for region in regions %}
<option value="{{ region.region }}">{{ region.region }}</option>
{% endfor %}
</select>
正如你所看到的选择的onchange,我打电话给地区功能,并传递给它两个参数。回调的名称,选择的值
这里是在ajax.py文件
def regions(request, data):
CityList = City.objects.filter(region__exact=data)
out = "".join(['<option value="%s">%s</option>' % (c.city,c.city) for c in CityList])
return simplejson.dumps(out)
dajaxice_functions.register(regions)
该工程确定,并调用功能,与相关数据,在没有模板我的JavaScript函数当地区的名称没有任何国际字符时会出现问题。
举例说'安塔利亚'。然而,当像穆拉那样的地区出现时,它就不起作用。在仔细检查时,变量数据包含'Mu%u011Fla',我似乎无法将其恢复到我认为必要的格式,以便Django可以正确访问模型数据。
我已经在页面顶部使用了魔术引号,我尝试过用data.decode('string-escape')和它在UTF-8和后退之间咀嚼它..但我没有尝试似乎去工作...
这是一个Dajaxice,Django或蟒蛇的问题...或者我错过了一些非常简单的东西吗?
我已经在这里两天了,试图找出这个......非常感谢您提供任何帮助,您可能能够提供。
干杯
是在数据库中正确的字符串,并且在您将其提取或渲染时发生更改,或者在数据库中以相同的扭曲形式进行更改? – 2010-08-25 17:37:55
数据库中的字符串正常。我通过视图def将它从数据库中提取出来......我将它粘在上面的select中,然后选择它并调用onchange ...它通过一些Dajaxice代码传递给ajax.py中的函数。我不确定这是因为它离开选择还是什么时候失真。它与数据库不匹配并拉出地区城市记录的原因是因为它的失真。 – Chez 2010-08-25 17:58:45
如果我把这个变量作为javascript函数传递给它,并且在alert中忽略它,那就没问题。但我不想这样做,因为我需要它在ajax.py方法中很好,这样我就可以用它来拉取数据库记录...... – Chez 2010-08-25 18:04:27