Bootstrap-modal-hintergrund wird nicht verschwinden

Also ich habe das anmelden Seite mit Bootstraps modal. Jedoch, nachdem der Anruf beendet wurde die modal verschwindet, wie es sollte. Außer der schwarze hintergrund. Wie kann ich sicher stellen, dass der hintergrund verschwindet?

Meine _Menu.cshtml:

<div id="menu">
    <div class="modal fade" id="form_login" role="dialog" aria-labelledby="form_LoginLabel" aria-hidden="true">
        <div class="modal-dialog reset">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <h4 class="modal-title">Login</h4>
                </div>

                @using (Ajax.BeginForm("SignIn", "Account", new AjaxOptions() { UpdateTargetId = "menu", InsertionMode = InsertionMode.Replace, HttpMethod = "POST", OnSuccess="CloseModal()" }, new { @class = "form-inline", @role = "form" }))
                {
                    <div class="modal-body">
                        @if(ViewBag.Message != null)
                        {
                            <p class="alert alert-warning">@ViewBag.Message</p>
                        }

                        <div class="form-group">
                            <label class="sr-only" for="email">Email</label>
                            <input class="form-control" type="email" id="email" name="email" placeholder="Enter email" value="" required="required" />
                        </div>

                        <div class="form-group">
                            <label class="sr-only" for="password">Password</label>
                            <input class="form-control" type="password" id="password" name="password" placeholder="Enter password" value="" required="required" />
                        </div>

                        <span id="message-login-loading" class="alert hidden"></span>
                        <span id="message-login-error" class="alert alert-danger hidden"></span>
                    </div>

                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                        <button type="submit" class="btn btn-success" id="login" ><span class="glyphicon glyphicon-user"></span> Sign in</button>
                        @Html.ActionLink("Register", "Register", "Account", null, new { @class = "btn btn-primary" })
                    </div>
                }
            </div>
        </div>
    </div>
</div>


AccountController:

    public ActionResult PartialMenu()
    {
        var model = ProfileSession.Session;
        return PartialView("_Menu", model);
    }

    public ActionResult SignIn(string email, string password)
    {
        Login login = loginRep.GetByEmailAndPassword(email, password);

        if (login != null)
        {
            ProfileSession.Session = profileRep.GetById(login.fk_profile);
            return RedirectToAction("PartialMenu", "Home");
        }

        ViewBag.Message("Email or password is incorrect");

        return RedirectToAction("PartialMenu");
    }
Erstellen Sie ein jsfiddle bitte. Auch "hintergrund"? Meinst du den overlay - /hintergrund? Ihre server-code ist irrelevant.
Ich glaube nicht, dass der server-code ist irrelevant. Seit das problem aufgetreten ist, nachdem ich als server bezeichnet. Und der code zeigt, wie das Formular soll aktualisiert werden. Was ich nicht verstehe, ist, warum die verblichenen schwarzen hintergrund hinter dem weißen modal verschwindet nicht zusammen mit dem modal. Und ich bin nicht in der Lage zu wiederholen, das problem bei jsFiddle. Sorry
Wenn ich pop-modal-code, wie es in Bootply und pop es auf die Seite laden, dann schließen Sie es, es geht Weg, in der Regel: bootply.com/DkrP5BPYsA. Es sei denn, es ist eine Art zu replizieren den Fehler, ich bin nicht sicher, wie viel Hilfe jemand ist in der Lage sein, um Ihnen.
Schließen Sie das modal mit dem "schließen" x " in der oberen Ecke rechts? Das funktioniert für mich auch. Es ist nach dem ajax-Aufruf, der das problem aufgetreten ist. Ich denke das problem aufgetreten ist wegen dem update, das die aja hat. Was ich Frage ist ob es einen Weg gibt, um vielleicht Kraft den hintergrund verschwinden, wenn der ajax-Aufruf war ein Erfolg
Sie sollten in der Lage sein zu senden, eine Erfolgsmeldung zurück, um behandelt werden via JavaScript. Wenn es ein Erfolg wird, laufen .modal('hide') auf Ihre modalen und das sollte es komplett verbirgt. Sache ist, ohne ein gangbarer Weg, um zu testen, oder das Problem reproduzieren, ist es sehr unwahrscheinlich, dass irgendjemand hier in der Lage, Ihnen zu helfen.

InformationsquelleAutor Michael Tot Korsgaard | 2015-01-15

Schreibe einen Kommentar