Jquery 一页两张表格

Jquery 一页两张表格,jquery,ajax,forms,Jquery,Ajax,Forms,我有一个表单,可以将一个电子邮件地址提交到我的数据库中,它可以正常工作,除非我想在一个页面上放置多个电子邮件地址。当我这样做的时候,它会迫使我把信息放在html中hirer的任何形式上。我的代码如下: $('#signup').submit(function() { $('#response').html('Adding email address...'); $.ajax({ url: 'send.php', data: 'ajax=true&

我有一个表单,可以将一个电子邮件地址提交到我的数据库中,它可以正常工作,除非我想在一个页面上放置多个电子邮件地址。当我这样做的时候,它会迫使我把信息放在html中hirer的任何形式上。我的代码如下:

$('#signup').submit(function() {
    $('#response').html('Adding email address...');

    $.ajax({
        url: 'send.php',
        data: 'ajax=true&email=' + escape($('#email').val()),
        success: function(msg) {
            $('#signupResponse').html(msg);
        }
    });

    return false;
});
HTML:


获取最新的海报事实!
现在对我来说,我能想到的解决这个问题的最简单的方法是使用相同的代码,但改变#注册和#注册响应其他东西,但我认为必须有更好的方法

感谢您的帮助

更改#注册和#注册响应将起作用,如果您只有两种表单,您当然可以这样做

如果您想制作一个通用版本,可以使用类来实现。更改#注册到.ajaxForm(或类似的东西)。根据#signupresponse的位置,您可以执行类似.parent()或.children('.response')的操作来引用它。您还可以在函数中使用$(this)来引用所选的表单,而不是所有表单

例如,如果你的结构是

<div class="ajax-form">
    <form>
    ...
    <input type="text" name="email" class="email" />
    <input type="submit" value="Submit" />
    </form>
    <span class="response"></span>
    <span class="signup-response"></span>
</div>
这种通用格式为两个表单提供一个javascript

<div class="ajax-form">
    <form>
    ...
    <input type="text" name="email" class="email" />
    <input type="submit" value="Submit" />
    </form>
    <span class="response"></span>
    <span class="signup-response"></span>
</div>
$('.ajax-form form').submit(function() {
    $(this).parent().children('.response').html('Adding email address...');

    $.ajax({
        url: 'send.php',
        data: 'ajax=true&email=' + escape($(this).children('.email').val()),
        success: function(msg) {
            $(this).parent().children('.signup-response').html(msg);
        }
    });

    return false;
});