Javascript 如何限制非提交按钮点击表单后重新加载页面?
我试图在HTML表单上创建一个按钮,向表单中添加元素:Javascript 如何限制非提交按钮点击表单后重新加载页面?,javascript,html,forms,Javascript,Html,Forms,我试图在HTML表单上创建一个按钮,向表单中添加元素: 函数createRow(){ var行=document.createElement('div'); var input=document.createElement('input'); input.setAttribute(“类型”、“文本框”); var time=document.createElement('input'); setAttribute(“类型”、“文本框”); 行。追加子项(输入); 行。追加子行(时间); 返回行
函数createRow(){
var行=document.createElement('div');
var input=document.createElement('input');
input.setAttribute(“类型”、“文本框”);
var time=document.createElement('input');
setAttribute(“类型”、“文本框”);
行。追加子项(输入);
行。追加子行(时间);
返回行;
}
函数addRow(){
控制台日志(“z”);
var routes=document.getElementById(“routes”);
appendChild(createRow());
返回false;
}
+
提交的默认行为为按钮
。指定type=按钮
,它将覆盖此默认行为
+
单击onclick
函数应返回false
。另外,addRow()
需要返回false
:
<form id="routes">
<button onclick="return addRow()">+</button>
</form>
+
好的,这里有一个在事件侦听器上使用preventDefault的示例
函数createRow(){
var行=document.createElement('div');
var input=document.createElement('input');
var time=document.createElement('input');
input.setAttribute(“类型”、“文本框”);
setAttribute(“类型”、“文本框”);
行。追加子项(输入);
行。追加子行(时间);
返回行;
}
函数addRow(){
document.getElementById(“routes”).appendChild(createRow());
}
document.querySelector(“按钮”).addEventListener(“单击”),函数(事件)
{
event.preventDefault();
addRow();
});代码>
+
在表单内部,HTML5按钮元素的默认类型为submit。如果你给它一种“按钮”,一切都很好
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form id="routes">
<div><button type="button" onclick="addRow()">+</button></div>
</form>
<script type="text/javascript">
function createRow(){
var row = document.createElement('div');
var input=document.createElement('input');
input.setAttribute("type", "Textbox");
var time=document.createElement('input');
time.setAttribute("type", "Textbox");
row.appendChild(input);
row.appendChild(time);
console.log(row);
return row;
}
function addRow(){
console.log("z");
var routes = document.getElementById("routes");
routes.appendChild(createRow());
return false;
}
</script>
</body>
</html>
+
函数createRow(){
var行=document.createElement('div');
var input=document.createElement('input');
input.setAttribute(“类型”、“文本框”);
var time=document.createElement('input');
setAttribute(“类型”、“文本框”);
行。追加子项(输入);
行。追加子行(时间);
控制台日志(行);
返回行;
}
函数addRow(){
控制台日志(“z”);
var routes=document.getElementById(“routes”);
appendChild(createRow());
返回false;
}
给按钮一个id
并将preventDefault
放入$(文档)中。就绪(..)
功能
$(文档).ready(函数(){
$(“#路由按钮”)。单击(函数(事件){
event.preventDefault();
});
});
函数createRow(){
var行=document.createElement('div');
var input=document.createElement('input');
input.setAttribute(“类型”、“文本框”);
var time=document.createElement('input');
setAttribute(“类型”、“文本框”);
行。追加子项(输入);
行。追加子行(时间);
返回行;
}
函数addRow(){
控制台日志(“z”);
var routes=document.getElementById(“routes”);
appendChild(createRow());
返回false;
}
+