<script src="../../static/jquery-3.3.1.min.js"></script> <script> $(function(){ $.get('http://127.0.0.1:8000/api/identity/', function(res) { var rows = [] $.each(res, function(i, item){ $('#content').append( '<div class="user_image">' +item.name+'</div>' ) }) }) }) </script>
时间: 2024-03-30 15:34:29 浏览: 17
这段代码中,首先加载了 jQuery 库,然后使用 `$(function(){})` 来确保页面加载完成后执行 JavaScript 代码。接着使用 `$.get()` 方法向指定的 URL 发送 GET 请求,获取返回的 JSON 数据。在请求成功后,使用 `$.each()` 方法遍历 JSON 数据,并将其添加到页面中指定的元素 `#content` 中。
需要注意的是,这段代码中使用的 URL 是 `http://127.0.0.1:8000/api/identity/`,这个 URL 可能只在本地开发环境中可用。如果你要在其他环境中使用,需要将其修改为正确的 URL。
另外,这段代码中的 `'<div class="user_image">' +item.name+'</div>'` 是一个简单的 HTML 字符串,它将 JSON 数据中的 `name` 属性作为文本内容添加到了一个带有 `user_image` 类的 `<div>` 元素中,你可以根据需求修改这个 HTML 字符串。
相关问题
bootstrap table 表头固定表体滚动
在 Bootstrap 中,可以使用固定表头和滚动表体的插件来实现这个效果。以下是实现步骤:
1. 引入必要的文件:
```
<link rel="stylesheet" href="https://cdn.staticfile.org/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/bootstrap/4.3.1/js/bootstrap.min.js"></script>
```
2. 创建一个表格,并在表格头部添加 `thead` 标签:
```
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>列头1</th>
<th>列头2</th>
<th>列头3</th>
</tr>
</thead>
<tbody>
<tr>
<td>行1列1</td>
<td>行1列2</td>
<td>行1列3</td>
</tr>
<tr>
<td>行2列1</td>
<td>行2列2</td>
<td>行2列3</td>
</tr>
<!-- more rows -->
</tbody>
</table>
```
3. 使用 JavaScript 初始化表格,并调用插件:
```
$(function() {
$('.table').fixedHeaderTable({
fixedColumn: true
});
});
```
其中,`fixedHeaderTable` 是插件名称,`fixedColumn: true` 表示需要固定表头。
4. 根据需要调整样式:
```
.table-fixed-header {
overflow-y: auto;
max-height: 400px;
}
.table-fixed-header thead th,
.table-fixed-header tbody td {
width: 100px;
min-width: 100px;
max-width: 100px;
}
```
其中,`.table-fixed-header` 是插件自动生成的类名,可以根据需要进行修改。
完整代码如下:
```
<!DOCTYPE html>
<html>
<head>
<title>Bootstrap Table 表头固定表体滚动</title>
<meta charset="utf-8">
<link rel="stylesheet" href="https://cdn.staticfile.org/bootstrap/4.3.1/css/bootstrap.min.css">
<style>
.table-fixed-header {
overflow-y: auto;
max-height: 400px;
}
.table-fixed-header thead th,
.table-fixed-header tbody td {
width: 100px;
min-width: 100px;
max-width: 100px;
}
</style>
</head>
<body>
<div class="container">
<table class="table table-bordered table-striped table-fixed-header">
<thead>
<tr>
<th>列头1</th>
<th>列头2</th>
<th>列头3</th>
</tr>
</thead>
<tbody>
<tr>
<td>行1列1</td>
<td>行1列2</td>
<td>行1列3</td>
</tr>
<tr>
<td>行2列1</td>
<td>行2列2</td>
<td>行2列3</td>
</tr>
<!-- more rows -->
</tbody>
</table>
</div>
<script src="https://cdn.staticfile.org/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/fixed-header-table@1.3.2/dist/fixed-header-table.min.js"></script>
<script>
$(function() {
$('.table').fixedHeaderTable({
fixedColumn: true
});
});
</script>
</body>
</html>
```
springboot vue websocket项目案例
以下是一个简单的 Spring Boot + Vue.js + WebSocket 的项目案例,该项目实现了一个简单的在线聊天室:
后端部分(Spring Boot + WebSocket):
1. 创建 Spring Boot 项目,在 pom.xml 中添加 WebSocket 和 Thymeleaf 的依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
```
2. 创建 WebSocket 配置类:
```java
@Configuration
@EnableWebSocket
public class WebSocketConfig implements WebSocketConfigurer {
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(new ChatWebSocketHandler(), "/chat").setAllowedOrigins("*");
}
}
```
3. 创建 WebSocket 处理类:
```java
public class ChatWebSocketHandler extends TextWebSocketHandler {
private static final List<WebSocketSession> sessions = new CopyOnWriteArrayList<>();
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
sessions.add(session);
}
@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
for (WebSocketSession s : sessions) {
s.sendMessage(message);
}
}
@Override
public void afterConnectionClosed(WebSocketSession session, CloseStatus status) throws Exception {
sessions.remove(session);
}
}
```
4. 创建一个简单的控制器,用于返回聊天室页面:
```java
@Controller
public class ChatController {
@GetMapping("/")
public String index() {
return "index";
}
}
```
5. 创建聊天室页面 index.html:
```html
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>WebSocket Chat Demo</title>
</head>
<body>
<h1>WebSocket Chat Demo</h1>
<div>
<div id="message-list"></div>
<form id="chat-form">
<input type="text" id="message-input">
<button type="submit">Send</button>
</form>
</div>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script src="/js/chat.js"></script>
</body>
</html>
```
6. 创建 JavaScript 文件 chat.js,用于连接 WebSocket 服务器并处理消息:
```javascript
$(function () {
var socket = new WebSocket("ws://" + location.host + "/chat");
socket.onopen = function () {
console.log("WebSocket connection established.");
};
socket.onmessage = function (event) {
var message = event.data;
$("#message-list").append($("<div>").text(message));
};
socket.onclose = function () {
console.log("WebSocket connection closed.");
};
$("#chat-form").submit(function (event) {
event.preventDefault();
var message = $("#message-input").val();
socket.send(message);
$("#message-input").val("");
});
});
```
前端部分(Vue.js):
1. 在根目录下创建一个 public/js 目录,用于存放 Vue.js 和 chat.js 文件。
2. 在 index.html 中引入 Vue.js 文件:
```html
<script src="https://cdn.bootcss.com/vue/2.6.11/vue.min.js"></script>
```
3. 创建 Vue.js 组件 ChatRoom,用于显示聊天室页面:
```html
<template>
<div>
<div id="message-list">
<div v-for="message in messages" :key="message">{{ message }}</div>
</div>
<form @submit.prevent="sendMessage">
<input v-model="messageText" type="text" id="message-input">
<button type="submit">Send</button>
</form>
</div>
</template>
<script>
export default {
data() {
return {
messages: [],
messageText: ''
}
},
mounted() {
var socket = new WebSocket("ws://" + location.host + "/chat");
socket.onmessage = event => {
var message = event.data;
this.messages.push(message);
};
},
methods: {
sendMessage() {
var socket = new WebSocket("ws://" + location.host + "/chat");
socket.send(this.messageText);
this.messageText = '';
}
}
}
</script>
```
4. 创建 main.js 文件,用于创建 Vue.js 实例并挂载到页面:
```javascript
import Vue from 'vue'
import ChatRoom from './components/ChatRoom.vue'
new Vue({
el: '#app',
components: { ChatRoom },
template: '<ChatRoom/>'
})
```
5. 修改 index.html,使用 Vue.js 组件替代原有的 HTML 代码:
```html
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>WebSocket Chat Demo</title>
</head>
<body>
<h1>WebSocket Chat Demo</h1>
<div id="app">
<chat-room></chat-room>
</div>
<script src="https://cdn.bootcss.com/vue/2.6.11/vue.min.js"></script>
<script src="/js/main.js"></script>
</body>
</html>
```
以上就是一个简单的 Spring Boot + Vue.js + WebSocket 的项目案例。