调用基于类的函数并修改内部ID

时间:2012-03-19 23:36:37

标签: jquery

我有以下代码:

$('.tagform').submit(function() {
            $('#tagsubmit-???').toggle('1000');
            return false;
});

我有很多<form>个元素与tagform类。

<form class="tagform" id="tagform-1">
    <ul id="myTags-1"></ul>
    <input type="submit" value="submit" id="tagsubmit-1" class="tagsubmit" />            
</form>

<form class="tagform" id="tagform-2">
    <ul id="myTags-2"></ul>
    <input type="submit" value="submit" id="tagsubmit-2" class="tagsubmit" />            
</form>

我放置了问号,以便您可以更好地了解我正在尝试做的事情。

如果基于类而不是id调用我的submit()函数,如何判断提交的表单?

2 个答案:

答案 0 :(得分:0)

为了知道提交了什么表单,你可以使用$(this)来获取元素,然后通过.attr()获取id。

如果您需要获取表单中的按钮,可以在提交的表单下选择提交输入类型,如下所示:

$('.tagform').submit(function() {            
        alert($(this).attr('id'));

        $("input[type=submit]", $(this)).toggle(1000); // or $(".tagsubmit", $(this)).toggle(1000);

        return false;
});

甚至使用.find:

$(this).find(".tagsubmit").toggle(1000):

更多信息:

Using $(this) selector
.attr()
.find()

答案 1 :(得分:0)

您可以通过id

抓取它来访问提升活动元素的attr
var id = $(this).attr('id');

在这种情况下,虽然您不需要ID。您可以直接使用$(this).toggle,因为this将设置为引发事件的DOM元素。

$('.tagform').submit(function() {
  $(this).toggle('1000');
  return false;
});