使用django 怎么实现部分页面刷新?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
1、在原页面中设置这个表格的id为pstable
<table class="table table-striped" id="pstable">
<thead>
<tr>
<th>user</th>
<th>pid</th>
<th>cmd</th>
</tr>
</thead>
<tbody>
{% for ps in info.ps_data %}
<tr>
{% for item in ps %}
<td>{{ item }}</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
2、实现js
<script type="text/javascript">
$(document).ready(function(){
$("#gobtn").click(function(){
var ip=$("#ip").val(); //获取输入框中的ip
$.post("/process/",{'hostip':ip}, //post函数到后端
function(data,status){ //回调函数
$("#pstable").html(data); //将id为pstable的标签的html替换为返回的data
$("#ip").val(ip) //将输入框的值改为查询的ip
});
});
});
3、view函数
def process_view(request):
hostip = request.POST.get('hostip')
logger.debug("host:%s" % hostip)
if hostip is None:
ps_data = GetHostPs('192.168.163.128')
info = {'username':request.user,'ps_data':ps_data}
template = 'process.html'
#return render(request,'process.html',{"info":info})
elif hostip:
ps_data = GetHostPs(hostip)
info = {'username':request.user,'ps_data':ps_data}
template = 'pstable.html'
#return render(request,'pstable.html',{"info":info})
else:
ps_data = GetHostPs('192.168.163.128')
info = {'username':request.user,'ps_data':ps_data}
template = 'pstable.html'
return render(request,template,{"info":info})
4、pstable.html 在这个html定义好要根据ip获取到进程信息后的html代码
<thead>
<tr>
<th>user</th>
<th>pid</th>
<th>cmd</th>
</tr>
</thead>
<tbody>
{% for ps in info.ps_data %}
<tr>
{% for item in ps %}
<td>{{ item }}</td>
{% endfor %}
</tr>
{% endfor %}
<tbody>
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注天达云行业资讯频道,感谢您对天达云的支持。