Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在JSON字符串中转义unicode语法(u';foo';)?_Jquery_Python_Json_Unicode - Fatal编程技术网

Jquery 如何在JSON字符串中转义unicode语法(u';foo';)?

Jquery 如何在JSON字符串中转义unicode语法(u';foo';)?,jquery,python,json,unicode,Jquery,Python,Json,Unicode,我正在将一个JSON字符串从服务器传递到Django模板。当我将JSON字符串分配给jQuery变量时,我得到的是unicode语法 Py: jQuery/Django模板: var friends = {{friends}}; 检查Firebug中的任务: [ { u'name': u'Joe Smith', u'id': u'6500000' }, { u'name': u'Andrew Smith'

我正在将一个JSON字符串从服务器传递到Django模板。当我将JSON字符串分配给jQuery变量时,我得到的是unicode语法

Py:

jQuery/Django模板:

var friends = {{friends}};
检查Firebug中的任务:

[
      {
         u'name': u'Joe Smith',
         u'id': u'6500000'
      },
      {
         u'name': u'Andrew Smith',
         u'id': u'82000'
      },
      {
         u'name': u'Dora Smith',
         u'id': u'97000000'
      }
]

例如,当python表示字符串时,
u'123'
表示该字符串为unicode,则转义或删除该字符串没有任何实际好处,它的行为仍与普通字符串类似。当python表示字符串时,
u'123'
表示该字符串为unicode,转义或删除它并没有真正的好处,它的行为仍然像一个普通的字符串

您需要在服务器端将
friends
转换为JSON。您看到的是Python表示,它有时看起来有点像JSON,但实际上并非如此。

您需要在服务器端将
friends
转换为JSON。您看到了Python表示,它有时看起来有点像JSON,但实际上不是。

正如Brian Goldman所指出的,
friends
变量不是您所说的JSON字符串,而是一个Python对象,有时打印出来时看起来很像JSON

在将其传递给模板之前,需要将其转换为正确的JSON。在
视图.py的顶部,放置以下行

from django.utils import simplejson
然后将
simplejson.dumps(friends)
传递给模板,而不仅仅是
friends


无论你做什么,都不要试图在模板中手工构建JSON:)如果你不能完全控制源数据(而且你没有;在本例中,它来自Facebook),那么你的模板将永远不会有问题。

正如Brian Goldman指出的,
friends
变量不是JSON字符串,就像你说的那样,但Python对象有时看起来很像JSON,打印出来时可以传递给它

在将其传递给模板之前,需要将其转换为正确的JSON。在
视图.py的顶部,放置以下行

from django.utils import simplejson
然后将
simplejson.dumps(friends)
传递给模板,而不仅仅是
friends


无论你做什么,都不要试图在模板中手工构建JSON:)如果你不能完全控制源数据(而且你没有;在这种情况下,它来自Facebook),那么你的模板将永远不会有问题。

除非我有误解,似乎优势在于生成jquery实际接受的json数据。除非我有误解,否则优势在于生成jquery实际接受的json数据。我想您在这里遇到了一个错误?如果你告诉我们更多关于错误的信息,问题可能会更清楚。我想你在这里得到了一个错误?如果你告诉我们更多关于错误的信息,问题可能会更清楚。这个答案完全正确
friends
是Python字典的Python列表,而不是您认为的JSON字符串。这个答案完全正确
friends
是Python字典的Python列表,而不是您认为的JSON字符串。