Jquery 如何将Ajax()中的值转换成Django模板?
我有一个Django模板,其中显示从数据库接收的多个值,并将其传递给模板,如下所示: in views.pyJquery 如何将Ajax()中的值转换成Django模板?,jquery,python,ajax,django,Jquery,Python,Ajax,Django,我有一个Django模板,其中显示从数据库接收的多个值,并将其传递给模板,如下所示: in views.py def test1(requests): requests.get... requests.get... requests.get... someQuery = "select id from table;" executeQ(someQuery) someQuery = "select id from table;" executeQ(someQuery)
def test1(requests):
requests.get...
requests.get...
requests.get...
someQuery = "select id from table;"
executeQ(someQuery)
someQuery = "select id from table;"
executeQ(someQuery)
someQuery = "select id from table;"
executeQ(someQuery)
context = Data1, Data2, Data3
return render_to_response('test1/index.html', context)
在template/test1/index.html中
<html>
......
<table>
<th> header1 </th>
<th> header2 </th>
<th> header3 </th>
{% for row in context %}
<td> row.1 </td>
<td> row.2 </td>
<td> row.3 </td>
{% endfor %}
......
校长1
校长2
校长3
{上下文%中的行的%1}
第1排
第2排
第3排
{%endfor%}
现在,我想要的是通过Ajax更新这些行。1,行。2,行。3,而不是每次都重新编辑页面。数据来自数据库。那么我在哪里以及如何添加一些Ajax(),Django就是这样吗?除了服务器端代码(Python)之外,还需要添加一些客户端代码(JavaScript) 一种常见的方法是使用jQuery方法向服务器发送ajax请求,使用django应用程序处理该请求,将响应发送回客户端,然后操作DOM 因此,您的客户端代码需要
- 向服务器发送(常用)
- 如果 请求成功(通常在成功回调中) 功能)
- 您可以通过迭代JSON响应中的数据来创建表行所需的标记,然后使用JavaScript/jQuery将前一行替换为新标记(如图所示)
- 匹配
- 在关联视图中查询数据库
- 将返回的数据序列化到(可以使用python模块)
- 通过返回此JSON(谈论JSON和HttpResponses)
还值得一提的是,您不必在ajax步骤中使用jQuery,但是它是一种流行的方法,并且非常用户友好。除了服务器端代码(Python)之外,您还需要添加一些客户端代码(JavaScript) 一种常见的方法是使用jQuery方法向服务器发送ajax请求,使用django应用程序处理该请求,将响应发送回客户端,然后操作DOM 因此,您的客户端代码需要
- 向服务器发送(常用)
- 如果 请求成功(通常在成功回调中) 功能)
- 您可以通过迭代JSON响应中的数据来创建表行所需的标记,然后使用JavaScript/jQuery将前一行替换为新标记(如图所示)
- 匹配
- 在关联视图中查询数据库
- 将返回的数据序列化到(可以使用python模块)
- 通过返回此JSON(谈论JSON和HttpResponses)
还值得一提的是,您不必在ajax步骤中使用jQuery,但是它是一种流行的方法,并且非常友好。感谢@dannymilsom提供了很好的解释和很好的示例。我有几个问题:1。Ajax()多久发送一次请求以获取更新的数据?如果需要,我们如何更改它。2.一旦我得到数据,我如何使用javascript变量进入Django{{variable}}?1。)您可以使用window.setInterval()重复发送异步请求,使用$.ajax()在适合您的需求的时间段2.)一旦页面呈现,django模板变量在源代码中将是HTML-因此您必须在JavaScript中使用适当的选择器来唯一标识您要修改的元素。没有问题-如果这有助于您自由地对其进行投票或将其标记为anwser so问题结束了。谢谢@dannymilsom的解释和很好的例子。我有几个问题:1。Ajax()多久发送一次请求以获取更新的数据?如果需要,我们如何更改它。2.一旦我得到数据,我如何使用javascript变量进入Django{{variable}}?1。)您可以使用window.setInterval()重复发送异步请求,使用$.ajax()在适合您的需求的时间段2.)一旦页面呈现,django模板变量在源代码中将是HTML-因此您必须在JavaScript中使用适当的选择器来唯一标识您要修改的元素。没有问题-如果这有助于您自由地对其进行投票或将其标记为anwser so问题结束了。