gpt4 book ai didi

javascript - 如何找出我刚刚在 jQuery 中提交的表单?

转载 作者:行者123 更新时间:2023-11-29 20:21:55 24 4
gpt4 key购买 nike

我使用 $.post 函数来提交一个 ajax 请求:

$('.typeAform').submit(function(){
$.post('/home', { somevar : 'somevalue' }, function(){
//do something with the original form
});
return false;
});

我想在从 $.post 回调提交后识别我的表单,这样我就可以用它做一些事情(即改变它的背景颜色,删除它,等等)。通常,我可以通过我提前知道的唯一 ID 来调用表单,但在这里我没有 - 我为表单使用了一个类,而不是单个 ID。

有没有一种方法可以在不使用全局变量的情况下识别我刚刚提交的表单(即以某种方式将其传递给回调)。

谢谢!

最佳答案

编辑:

因为 submit 的目标事件应该始终是表单本身,您也可以使用 target event 的属性(property)对象,如:e.target

$('.typeAform').submit(function( e ){
$.post('http://apple.com', { somevar : 'somevalue' }, function(){
// e.target references the form that was submitted.
alert(e.target)
});
return false;
});​

如果这给您带来麻烦,那么如果您不想创建变量,还有其他方法可以避免创建变量。


.submit() 中的 DOM 元素获取 ID :

var id = this.id;

那就是:

$('.typeAform').submit(function(){
var id = this.id;
$.post('/home', { somevar : 'somevalue' }, function(){
//do something with the original form
// Use the "id" here
});
return false;
});

或者如果您想要表格本身,只需引用 this .

$('.typeAform').submit(function(){
var theForm = this;
$.post('/home', { somevar : 'somevalue' }, function(){
//do something with the original form
// Use the "theForm" here
alert( theForm.id );
$(theForm).someJQueryMethod()
});
return false;
});

请注意,一旦您进入 $.post回调,this不再引用 <form> .这就是我们在变量中引用它的原因。

关于javascript - 如何找出我刚刚在 jQuery 中提交的表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3586146/

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