使用JavaScript生成可编辑能够插入图片的网页表格
时间: 2024-03-24 13:40:53 浏览: 125
使用JavaScript制作网页可变化表格
好的,下面是一个可以生成可编辑,能够插入图片的网页表格的JavaScript代码示例:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>可编辑、可插入图片的网页表格</title>
</head>
<body>
<button onclick="addRow()">新增一行</button>
<table id="myTable">
<thead>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>照片</th>
</tr>
</thead>
<tbody>
<tr>
<td contenteditable="true">张三</td>
<td contenteditable="true">25</td>
<td>
<input type="file" onchange="previewImage(this)">
</td>
</tr>
<tr>
<td contenteditable="true">李四</td>
<td contenteditable="true">30</td>
<td>
<input type="file" onchange="previewImage(this)">
</td>
</tr>
</tbody>
</table>
<script>
function addRow() {
var table = document.getElementById("myTable");
var newRow = table.insertRow();
var nameCell = newRow.insertCell();
var ageCell = newRow.insertCell();
var photoCell = newRow.insertCell();
nameCell.contentEditable = true;
ageCell.contentEditable = true;
photoCell.innerHTML = '<input type="file" onchange="previewImage(this)">';
}
function previewImage(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
input.parentNode.innerHTML = '<img src="' + e.target.result + '" alt="照片">';
}
reader.readAsDataURL(input.files[0]);
}
}
</script>
</body>
</html>
```
在这个例子中,我们创建了一个包含一个按钮和一个表格的HTML页面。表格包含三列:姓名、年龄和照片。姓名和年龄单元格设置为可编辑状态,照片单元格包含一个文件上传的 `<input>` 元素,用户可以使用它上传图片。
当用户选择了图片文件后,JavaScript会读取文件,并使用 `FileReader` 对象将其转换为DataURL。然后将DataURL作为 `<img>` 标签的 `src` 属性值,替换掉原来的 `<input>` 元素。这样就可以在表格中插入图片了。
当用户点击“新增一行”按钮时,JavaScript会通过 `insertRow` 和 `insertCell` 方法创建一行和单元格,并将单元格设置为可编辑状态或包含文件上传的 `<input>` 元素。
阅读全文