gpt4 book ai didi

javascript - 为什么我的页面会重新加载,即使我有 event.preventDefault (表单处理 jquery + node.js)

转载 作者:行者123 更新时间:2023-12-01 03:32:50 27 4
gpt4 key购买 nike

我正在使用 jQuery 使用 node.js 和express.js 将数据异步发布到我的数据库

这大致是我正在做的事情:

index.html:

<form id='mailer' action='/mail/new' method='post'>
<input name='mycontent'/>
<input type='submit'/>
</form>

脚本.js:

$("#mailer").submit(function(e){
e.preventDefault();
$.post('/mailer/new',{mycontent:mycontent});
});

app.js:

app.post("/mailer/new",function(){
//insert into database
}

所以它本质上是提交到我的数据库,但忽略 e.preventDefault,因为当我按下提交时我的页面显示装载轮

最佳答案

  1. 正如评论者指出的,您需要删除哈希 #来自id您的表单属性:

    <form id='mailer'...

  2. 您需要在要提交的元素周围加引号。发生 JavaScript 错误(很可能是 undefined 变量)并且表单无论如何都会在 preventDefault() 之前提交。运行。

    $(#mailer).submit(function(e){...

    应该是:

    $('#mailer').submit(function(e){

关于javascript - 为什么我的页面会重新加载,即使我有 event.preventDefault (表单处理 jquery + node.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44447393/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com