Javascript 在表单提交中添加新段落无效
我试图在提交表单时通过javascript向我的dom/html/站点(我对html和js不熟悉)添加一个段落。这就是我到目前为止所做的:Javascript 在表单提交中添加新段落无效,javascript,dom,form-submit,Javascript,Dom,Form Submit,我试图在提交表单时通过javascript向我的dom/html/站点(我对html和js不熟悉)添加一个段落。这就是我到目前为止所做的: document.addEventListener('DOMContentLoaded',function() { var form = document.getElementById("form"); form.addEventListener("submit", add, false); }); function add(e) {
document.addEventListener('DOMContentLoaded',function()
{
var form = document.getElementById("form");
form.addEventListener("submit", add, false);
});
function add(e)
{
var para = document.createElement("p");
var newText = document.createTextNode("new text");
para.appendChild(newText);
document.documentElement.lastChild.appendChild(para);
}
这一段似乎被添加了,当我点击submit按钮时,我可以在一瞬间看到“新文本”,但随后它立即消失。这里有几点
e.preventDefault()
,以阻止这种情况发生
元素不应该是非
标记的后代,并且您不能总是保证
的.lastChild
将是
。为此,最好使用document.body
“提交”按钮正在提交表单,导致重新加载页面。让添加函数do
e.preventDefault()
并返回false。因为页面已提交@RobG我改了,它还是不见了谢谢你,这把它修好了。我会在5分钟内接受,如果可以的话:)虽然正文将始终是HTML文档中的正文。;-)@RobG我对这些属性的存在感到震惊,一方面它们非常有用,因为你通常需要元素,另一方面我不喜欢假装没有任何其他类型的节点。。。你还漏掉了单词valid;)@PaulS.-无论标记是否有效,浏览器都将创建有效的HTML文档对象(当然对于XML不是这样)。;-)怪癖越来越少了…@RobGdocument.documentElement.appendChild(document.createElement('p'));document.documentElement.lastElementChild;//