contenteditable="true">oninput="filterTable(1)"我需要保留这些功能属性
时间: 2023-07-24 10:14:14 浏览: 46
如果你想在保留`contenteditable="true"`和`oninput="filterTable(1)"`属性的同时实现表单提交功能,你可以使用JavaScript来处理表单提交。
首先,在`<form>`标签中添加一个`onsubmit`事件处理程序,用于在表单提交时执行自定义的JavaScript函数。例如:
```html
<form action="insert.php" method="POST" onsubmit="submitForm(event)">
<!-- 表单内容 -->
</form>
```
接下来,创建一个JavaScript函数`submitForm(event)`来处理表单的提交事件。在该函数中,你可以获取表单中的数据,并将其通过AJAX请求发送到服务器端的`insert.php`文件进行处理。例如:
```javascript
function submitForm(event) {
event.preventDefault(); // 阻止表单的默认提交行为
var name = document.getElementById("name").innerText;
var email = document.getElementById("email").innerText;
// 创建一个XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 设置请求方法、URL和异步标识
xhr.open("POST", "insert.php", true);
// 设置请求头
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
// 监听请求完成事件
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
// 请求成功处理
console.log(xhr.responseText);
}
};
// 构建请求体数据
var data = "name=" + encodeURIComponent(name) + "&email=" + encodeURIComponent(email);
// 发送AJAX请求
xhr.send(data);
}
```
在上述代码中,我们使用`event.preventDefault()`来阻止表单的默认提交行为。然后,我们通过`document.getElementById`方法获取输入字段的值,并将其编码为适当的格式。
接下来,我们创建了一个`XMLHttpRequest`对象,并设置了请求方法、URL和异步标识。我们还设置了请求头,将数据编码为`application/x-www-form-urlencoded`格式。
然后,我们监听`onreadystatechange`事件,该事件在AJAX请求完成时会被触发。如果请求成功,我们可以在该事件中处理相应的逻辑。
最后,我们构建了请求体数据,并使用`xhr.send(data)`发送AJAX请求。
确保将上述JavaScript代码放置在HTML文件的`<script>`标签中,或者放置在外部的JavaScript文件中并通过`<script src="path/to/your/javascript.js"></script>`引入。
通过以上步骤,你可以在保留`contenteditable="true"`和`oninput="filterTable(1)"`属性的同时,实现表单提交并将数据发送到服务器端的`insert.php`文件进行处理。
希望这个解决方案对你有帮助。如有任何疑问,请随时提问。