单击bootstrap警报的关闭按钮后,表单不起作用

时间:2013-08-13 15:17:47

标签: php javascript jquery twitter-bootstrap

我在这里遇到一个非常奇怪的问题。我使用bootstrap进行一些工具提示警报等。现在我有一个ajax表单,如果出现问题,它会在警报中响应错误消息。这一切都很好,但当我点击警告框的“关闭”按钮时,警报消失,但表单提交按钮不再起作用了吗?我不知道为什么它的行为是这样的,有人可以帮助我吗?

此外,当我不关闭警报时,当我输入新数据并点击提交时,它会提交。只有在关闭提醒表单后才会再提交

表格(有错误div)

<!-- ERROR BOX -->
<div id="regError" class="alert alert-error" style="margin-right: 20px; display: none;"></div>
<!-- ERROR BOX -->
<form id="registerform" action="ajax/register.php" method="post">
    <fieldset> <span class="help-block"><B>Jou gegevens</B></span>

        <input name="username" class="span4" type="text" value="Gebruikersnaam" onblur="onBlur(this)" onfocus="onFocus(this)" placeholder="Gebruikersnaam">
        <input name="email" class="span4" type="text" value="Email adres" onblur="onBlur(this)" onfocus="onFocus(this)" placeholder="Email adres">
        <input class="span4" type="text" value="Email adres (opnieuw)" onblur="onBlur(this)" onfocus="onFocus(this)" placeholder="Email adres (opnieuw)">
        <input class="span4" type="text" value="Wachtwoord" onblur="onBlur(this)" onfocus="onFocus(this)" placeholder="wachtwoord">
    </fieldset>

  <button type="submit" class="btn btn-primary" >Save changes</button>
  <button type="button" class="btn">Cancel</button>

javascript ajax call

$(document).ready(function () {
    $("#registerform").submit(function () {

        //Get al form data This = form and EL is element of the form
        var el = $(this),

            // get form action and method attribute
            url = el.attr('action'),
            type = el.attr('method'),

            // emty data array to fill with form data
            data = {}

            // The loop to get al form data
        el.find('[name]').each(function (index, value) {

            var el = $(this)
            name = el.attr('name'),
                value = el.val();

            //make data object
            data[name] = value;

        });

        //Do the ajax call
        $.ajax({
            type: type,
            url: url,
            data: data,
            success: function (response) {
                $('#regError').html(response);
                $('#regError').fadeIn();
            }
        })

        return false;
    })
})

PHP只是测试它是否有效..

<?php
if (isset($_POST)) {
    echo '<button type="button" class="close" data-dismiss="alert">×</button>';
    print_r($_POST);
}

1 个答案:

答案 0 :(得分:0)

好吧,因为我找不到解决方案,我只是删除了关闭按钮。