2016-02-18 144 views
-2

我有很多形式是动态创建的,每个表单都以递增的数字结尾。每个表单都有一个提交按钮,其中也有一个动态分配的名称。如何动态获取表单名称?

我正在使用下面的代码来调用一个函数,但它仅限于一种形式。是否有定制它,以便它动态地使用分配的表单名称?我还需要将表单名称保存到变量中。

jQuery的

$("myform0").submit(function (e) { 
     //Stops the submit request 
     e.preventDefault(); 
    }); 

    //checks for the button click event 
    $("#submit0").click(function (e) { 
     callfunction(); 
    }); 

的HTML

<form name="myform0"> 
    <input type="hidden" name="caseid" value="5008000000oYdXIAA0"> 
    <input type="submit" name="submit0" value="submit"> 
</form> 
+0

所以你不想提交表单,你想让它首先通过自定义函数运行? –

+0

是的,但只有一个表单将在任何给定的时间提交。 – user3436467

回答

1

要使用的,而不是提交请求的自定义函数,你应该调用函数提交监听器内。因为你需要的表单名称,你需要参考$(this)

$("form").submit(function (e) { 
    // Stops the submit request 
    e.preventDefault(); 

    // this refers to the form that is submitted 
    var formName = $(this).attr("name"); 

    // Call the function 
    callfunction(); 
}); 

如果你想将它应用到只有一种形式,提交选择更改为$("[name='myform0']")

+0

谢谢。这有帮助,但我想我也需要将表单名称设置为一个变量。我将如何在你的第一个选项之后做到这一点? – user3436467

+0

@ user3436467编辑补偿 –