Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.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
Javascript Django使用html元素呈现json响应_Javascript_Html_Django - Fatal编程技术网

Javascript Django使用html元素呈现json响应

Javascript Django使用html元素呈现json响应,javascript,html,django,Javascript,Html,Django,我正在学习ajax。例如,我想取一些物品。由于json只包含类似dict的数据,我必须将它们呈现为复杂的html元素 我正在考虑在哪里做渲染工作。如果在前端完成,使用javascript呈现如此复杂的html元素将是一件痛苦的事情 所以我认为最好利用Django模板。我需要的是使用html模板呈现它,并将整个html元素放入json中的字符串中,然后返回json。因此,我的前端将轻松获取呈现的元素,如数据['element'],并将其附加到我的页面 但我不知道如何在Django中实现这一点,通常

我正在学习ajax。例如,我想取一些物品。由于json只包含类似dict的数据,我必须将它们呈现为复杂的html元素

我正在考虑在哪里做渲染工作。如果在前端完成,使用javascript呈现如此复杂的html元素将是一件痛苦的事情

所以我认为最好利用Django模板。我需要的是使用html模板呈现它,并将整个html元素放入json中的字符串中,然后返回json。因此,我的前端将轻松获取呈现的元素,如数据['element'],并将其附加到我的页面

但我不知道如何在Django中实现这一点,通常我呈现一个html页面并直接返回它。但是它如何呈现html元素并将其放入json中呢?
或者有更好的方法吗?

你可以做得很好

假设在您的/html/url中有返回呈现的django模板的内容

然后在javascript中,您需要做的就是

$.ajax({
    url: 'your/html/url',
    action: 'get',
    success: function(response) {
        $("#place-you-want-answer").html(response);
    }  
})'
这是因为django端点只返回HTML字符串。通常,当浏览器点击它时,它会加载整个页面,但您也可以在javascript get请求中使用它

如果你只是在学习,这是一个很好的方法。但是,如果这是一个长期项目,我会认真考虑使用JavaScript框架来代替。它们使将对象转换为HTML变得更加容易。例如,React真的很好