Javascript 尝试在onSubmit=';的参数上使用serialize时失败;返回函数(this)';

Javascript 尝试在onSubmit=';的参数上使用serialize时失败;返回函数(this)';,javascript,jquery,ajax,forms,onsubmit,Javascript,Jquery,Ajax,Forms,Onsubmit,这里是javascript新手,如果这是基本的,那么很抱歉 所以我有一个表单,我想在确认后用它做一些AJAX(提交后确认框)。问题的最外层是serialize()不工作——它返回一个空白字符串。显然,我怀疑表面下还有更多关于它为什么不起作用的原因 这里我的目标是让表单转到onsubmit方法(confirm_delete()),在此基础上完成一些AJAX操作(当用户确认希望删除时)。无论哪种方式,我都不希望表单提交并加载一个新页面——因此出现了“return false;”我想让阿贾克斯接手 所

这里是javascript新手,如果这是基本的,那么很抱歉

所以我有一个表单,我想在确认后用它做一些AJAX(提交后确认框)。问题的最外层是serialize()不工作——它返回一个空白字符串。显然,我怀疑表面下还有更多关于它为什么不起作用的原因

这里我的目标是让表单转到onsubmit方法(confirm_delete()),在此基础上完成一些AJAX操作(当用户确认希望删除时)。无论哪种方式,我都不希望表单提交并加载一个新页面——因此出现了“return false;”我想让阿贾克斯接手

所以…这是表格:

<form class='delete_item' method='post' onSubmit='return confirm_delete(this)'>
   //lots of inputs here. . . .                             
   <button type='submit' class='btn-xs btn-danger remove_submit'>X</button>
</form>

谢谢。

。serialize
是一种jQuery方法,而不是原生的
JavaScript
方法,因此您需要使用
jQuery
包装器(
$()
)来使用它

//..
function confirm_delete(form){
    var r = confirm("Are you sure you want to delete?");
//note the $(form).serialize() vs form.serialize()
    var data = $(form).serialize(); 
//rest of your code...

哇…我真希望我能在两小时前发布这个…!谢谢
//..
function confirm_delete(form){
    var r = confirm("Are you sure you want to delete?");
//note the $(form).serialize() vs form.serialize()
    var data = $(form).serialize(); 
//rest of your code...