服务器之家

服务器之家 > 正文

django js实现部分页面刷新的示例代码

时间:2021-02-26 00:14     来源/作者:云中不知人

例子中,我用的是显示机器上的进程信息的表格,获取不同的机器的进程信息时,更新这个展示信息的表格,如下:

django js实现部分页面刷新的示例代码

当我在输入框中输入ip时,我希望只是更新这个表格,页面其他部分不变,实现方式如下:

1、在原页面中设置这个表格的id为pstable

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<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

?
1
2
3
4
5
6
7
8
9
10
11
<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函数

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<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>

当点击按钮查询指定ip的进程信息时,process()会判断这个ip的存在,如果这个ip存在,会将pstable.html保存到js函数中的data参数,然后js参数会调用回调函数,将id为pstable的tag的html替换为参数data保存的html,即pstable.html,从而局部修改页面,展示进程信息。

以上这篇django js实现部分页面刷新的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/u011085172/article/details/70917475

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部