Javascript preventDefault()无法使用(';submit';)函数

Javascript preventDefault()无法使用(';submit';)函数,javascript,ajax,form-submit,preventdefault,Javascript,Ajax,Form Submit,Preventdefault,我有以下代码: <form action="/example/call/to/api" id="myId" enctype="multipart/form-data" method="post"> 问题是我不需要重定向,但现在提交表单时,我总是被重定向到/example/call/to/api:/为什么在这种情况下,preventDefault无法工作 调用有效,问题是“preventDefault”不起作用 解决了,我只是使用了相同的函数,指向相同的ID以发出不同的请求(通过每

我有以下代码:

<form action="/example/call/to/api" id="myId" enctype="multipart/form-data"  method="post">
问题是我不需要重定向,但现在提交表单时,我总是被重定向到/example/call/to/api:/为什么在这种情况下,preventDefault无法工作

调用有效,问题是“preventDefault”不起作用

解决了,我只是使用了相同的函数,指向相同的ID以发出不同的请求(通过每个表单中的操作)。 只是划分了每个动作和所有工作的功能!
函数只取代码中的第一个ID,忽略所有其他ID。

您忘记了
('#myId')
之前的$or jQuery,并且在提交处理程序函数之前还有一个额外的

$('#myId').on('submit', function(e) {
 e.preventDefault();
 $.ajax({
 type:'POST',
 url: url,
 data:formData,
 cache:false,
 contentType: false,
 processData: false,
 xhr: function () {
 //some code here
 },      
 success:function(html){
 //some code here 
 }
 });
您还需要确保在文档准备就绪时正在运行代码;否则,表单将不存在

$(function(){
  $('#myId').on('submit', function(e) {
  e.preventDefault();
 $.ajax({
 type:'POST',
 url: url,
 data:formData,
 cache:false,
 contentType: false,
 processData: false,
 xhr: function () {
 //some code here
 },      
 success:function(html){
 //some code here 
 }
 });
});

您的点击事件必须与此类似

('#myId').on('submit', function() {...}
不是
('#myId')。在('submit',(function(){…})上


只需删除
在函数的开头和结尾

是否调用了您的提交处理程序?1.检查脚本是否确实添加到html中,2.确保它包装在文档中。就绪函数,3.检查控制台是否存在错误,代码已更新!脚本在html中,在文档就绪时启动,控制台不会给出错误。您的代码正常工作对我来说,问题一定在代码的其他地方。请提供一个可复制的示例。`$.ajax({({({(}myId')).on('submit',(函数(e){`是错误的为什么?我不明白为什么这会阻止执行
preventDefault()
。不需要使用
(…)
,我同意这一点,但这不是错误,对吗?
('#myId').on('submit', function() {...}