Jquery 试图将数据发布到同一页
我在创建网站的同时学习Python(&Django)。我已经学了很多,但在理解可用的工具和应该使用的工具时遇到了问题 我试图解决的问题:Jquery 试图将数据发布到同一页,jquery,html,django,python-2.7,Jquery,Html,Django,Python 2.7,我在创建网站的同时学习Python(&Django)。我已经学了很多,但在理解可用的工具和应该使用的工具时遇到了问题 我试图解决的问题: 我有一个链接列表。单击链接时,我需要查询一些数据,然后在同一页面上显示这些数据,而无需刷新或重新加载页面 #urls.py url(r'^post/query:(?P<minion_id>[^/]+)/$', views.get_miniondetail, name='get_miniondetail') #views.py --note ign
我有一个链接列表。单击链接时,我需要查询一些数据,然后在同一页面上显示这些数据,而无需刷新或重新加载页面
#urls.py
url(r'^post/query:(?P<minion_id>[^/]+)/$', views.get_miniondetail, name='get_miniondetail')
#views.py --note ignore file system it is a test output
def get_miniondetail(request, minion_id):
print 'in get_miniondetail: ' + minion_id + '\r'
detail = minion_id
context = {'minion_detail': detail}
html_string = '<html>' + detail + '</html>'
f = open('test.html', 'w+')
f.write(html_string)
f.close()
return HttpResponse(html_string, mimetype='text/plain')
<!-- html -->
<a href="post/query:{{ minion.name }}">{{ minion.name }}</a>
#url.py
url(r'^post/query:(?P[^/]+)/$,views.get\u miniondetail,name='get\u miniondetail')
#views.py--注意忽略文件系统这是一个测试输出
def get_miniondetail(请求,minion_id):
在get\u miniondetail:'+minion\u id+'\r'中打印'
详细信息=仆从id
上下文={'minion_detail':detail}
html_字符串=“”+详细信息+“”
f=open('test.html','w+'))
f、 写入(html_字符串)
f、 关闭()
返回HttpResponse(html_字符串,mimetype='text/plain')
我应该调用javascript函数而不是url映射到
get\u miniondetail
的链接吗?我还没能把头脑集中在表格上。所以我想知道jQuery是否能满足我的需要……如果是这样,如何实现?要在不刷新或重新加载页面的情况下显示数据,您肯定需要某种javascript框架,如jQuery或主干。您可以使用django获取JSON提要,然后在浏览器端使用jQuery刷新页面的数据部分
要查看的一些链接是
您在这里做了一些非常奇怪的事情。最奇怪的是,出于某种原因,您正在将HTML输出写入文件系统:不仅完全没有理由这样做,而且在实际系统中,您将立即遇到问题,因为许多不同的进程将试图写入同一个位置 但是还有其他奇怪的事情:硬编码HTML字符串而不是使用模板;奇数URL格式;正在输出模板代码而不是呈现它
你真的应该做这个教程。所有你遇到问题的事情都在那里处理 您的代码中缺少了很多东西,或者没有按照django的方式完成。但是,由于您正在努力使其工作,我建议您: 注意:代码尚未测试。但代码中需要更正的内容很少:
#url.py
url(r'^post/query/(?P[^/]+)/$),views.get\u miniondetail,name='get\u miniondetail')
#views.py--注意忽略文件系统这是一个测试输出
def get_miniondetail(请求,minion_id):
详细信息=仆从id
上下文={'minion_detail':detail}
html_字符串=“”+详细信息+“”
f=open('test.html','w+'))
f、 写入(html_字符串)
f、 关闭()
返回HttpResponse(html_字符串,mimetype='text/plain')
html
$('#link1')。单击($('#result1')。加载('post/query/{{minion.name}');
文件系统只是一个测试。我在列表中有多个项,所以我使用一个类。我现在有了一个jQuery函数,它可以给我一个带有仆从名称的警报。接下来是加载部分。谢谢单击($('result1).load(…)
中的'result1'是否正确?是否应该是
#result1?是否缺少一些关闭参数?`@IAbstract感谢您指出。但是,正如我所说,代码没有经过测试。
#views.py --note ignore file system it is a test output
def get_miniondetail(request, minion_id):
detail = minion_id
context = {'minion_detail': detail}
html_string = '<html>' + detail + '</html>'
f = open('test.html', 'w+')
f.write(html_string)
f.close()
return HttpResponse(html_string, mimetype='text/plain')
<a href="javascript:void(0);" id="link1">{{ minion.name }}</a>
<div id="result1"></div>
<script>
$('#link1').click($('#result1').load('post/query/{{ minion.name }}'));
</script>