Javascript 在onsubmit事件中获取表单id

Javascript 在onsubmit事件中获取表单id,javascript,jquery,Javascript,Jquery,您好,我正在尝试获取触发onsubmit事件的表单的id。我在一个页面中有很多表单,所以我需要这样做。我试过测试方法中的那些,所有这些都返回“未定义” 塞佩特埃克尔酒店 功能测试(){ var formID=$(this.parents(“form”).attr(“id”); //var formID=$(this).closest(“form”).attr(“id”); //var formID=$(this.closest(“form[id]”)attr('id'); 警报(formID+

您好,我正在尝试获取触发onsubmit事件的表单的id。我在一个页面中有很多表单,所以我需要这样做。我试过测试方法中的那些,所有这些都返回“未定义”


塞佩特埃克尔酒店
功能测试(){
var formID=$(this.parents(“form”).attr(“id”);
//var formID=$(this).closest(“form”).attr(“id”);
//var formID=$(this.closest(“form[id]”)attr('id');
警报(formID+‘表单已提交’);
}  

我建议您使用不引人注目的事件处理程序,而不是丑陋的内联事件处理程序

$('form').on('submit', test)
在函数中

function test(){
  console.log(this.id);
}

根据当前代码,传递当前元素上下文,即
this

<form id="addToBasketForm_39" onsubmit="test(this)">

下面是如何悄悄地分配给所有提交链接

也不要使用名称或ID
submit
它可以很容易地隐藏提交事件

最后,ID必须是唯一的,我从锚中删除了不再使用的ID

$(函数(){
$(“.add to cart”)。单击(“click”,函数(e){//任何具有类的内容都将添加到购物车
e、 preventDefault();//取消链接
var$form=$(this).closest(“form”);//此添加到购物车的表单
test($form.attr(“id”);//不确定您在这里想要什么
$form[0]。submit();//提交实际的DOM表单
});
});


塞佩特埃克尔酒店
功能测试(事件)
{
var id=event.id;
警报(id);
}

`功能测试(事件){var formId=event.target.id;}?@rematnarab,你应该读一下mplungjan的答案,我错过了点击部分,他已经注意到了你的答案,这让我非常感谢。不过我只有一个问题。。为什么不使用$form.submit()而不是$form[0]。提交?您可以尝试其中一种。使用
$form.submit()
时出现一些问题,因此我将确保提交本机表单。尝试
$form.submit()
,看看它是否满足您在使用的jQuery版本中的需要
<form id="addToBasketForm_39" onsubmit="test(this)">
function test(element){
  console.log(element.id)
}
<form id="addToBasketForm_39"  title="" method="post" onsubmit="test(this)">
          <input type="hidden" name="product_id" value="39">
          <input type="hidden" name="_token" value="M1kqlhvmIsZr9N8amTF84lwZeTuMgopHchEt4nhs">
            <a id="submit" class="add-to-cart" onclick="$('#addToBasketForm_39').submit()" >
            <i class="fa fa-shopping-cart"></i>Sepete Ekle</a>
        </form> 

<script type="text/javascript"> 
    function test(event)
    {
        var id = event.id;
        alert(id);
    }
</script>