ASP.NET从标记中调用#id

时间:2018-11-03 05:17:46

标签: asp.net-mvc

我有一个小问题-我用4个步骤构建了购物车结帐(带有步进器和指向部分视图的链接)。

现在我必须从redirectToAction ...调用特殊的#id(标签的属性)...

这怎么可能?

问题是-我进入第2步(局部视图)并调用一个动作结果,该操作将我重定向到“主视图”-但我必须转到第2或第3步。

有没有办法解决这个问题?

已经尝试使按钮超载,因此href调用链接,而onclick function()调用actionresult,但这是不可能的

也尝试将#id作为路由值,但似乎不起作用...

<script>
    function goBack() {
        window.history.back();
    }

    //Initialize tooltips
    //$('.nav-tabs > li a[title]').tooltip();

    //Wizard
    $('a[data-toggle="tab"]').on('show.bs.tab', function (e) {

        var $target = $(e.target);

        if ($target.hasClass('disabled')) {
            return false;
        }
    });

    $(".next-step").click(function (e) {
        var $active = $('.wizard .nav-tabs .nav-item .active');
        var $activeli = $active.parent("li");

        $($activeli).next().find('a[data-toggle="tab"]').removeClass("disabled");
        $($activeli).next().find('a[data-toggle="tab"]').click();
    });


    $(".prev-step").click(function (e) {

        var $active = $('.wizard .nav-tabs .nav-item .active');
        var $activeli = $active.parent("li");

        $($activeli).prev().find('a[data-toggle="tab"]').removeClass("disabled");
        $($activeli).prev().find('a[data-toggle="tab"]').click();

    });
</script>
<form class="form cf">
    <div class="wizard">
        <!-- ============================================================ NAVIGATION ============================================================ -->
        <div class="wizard-inner">
            <div class="connecting-line"></div>
            <ul class="nav nav-tabs" role="tablist">
                <!-- ======================================== Schritt 1 - Warenkorb ======================================== -->
                <li role="presentation" class="nav-item">
                    <a href="#step1" data-toggle="tab" aria-controls="step1" role="tab" title="Step 1" class="nav-link active navigation">
                        <span class="round-tab">
                            <i class="fa  fa-lg fa-shopping-cart"></i>
                        </span>
                    </a>
                </li>
                <!-- ======================================== Schritt 2 - Ausleihdatum ======================================== -->
                <li role="presentation" class="nav-item">
                    <a href="#step2" data-toggle="tab" aria-controls="step2" role="tab" title="Step 2" class="nav-link navigation disabled" id="schritt">
                        <span class="round-tab">
                            <i class="fa  fa-lg fa-calendar-check-o"></i>
                        </span>
                    </a>
                </li>
                <!-- ======================================== Schritt 3 - Rechnung- und Lieferadresse ======================================== -->
                <li role="presentation" class="nav-item">
                    <a href="#step3" data-toggle="tab" aria-controls="step3" role="tab" title="Step 3" class="nav-link navigation  disabled">
                        <span class="round-tab">
                            <i class="fa fa-lg  fa-address-card-o"></i>
                        </span>
                    </a>
                </li>
                <!-- ======================================== Schritt 4 - Bezahlmöglichkeit ========================================
    <li role="presentation" class="nav-item">
        <a href="#step4" data-toggle="tab" aria-controls="step4" role="tab" title="Step 4" class="nav-link disabled">
            <span class="round-tab">
                <i class="fa fa-lg fa-money"></i>
            </span>
        </a>
    </li>

    <!-- ======================================== Schritt 5 - Abschluss ======================================== -->
                <li role="presentation" class="nav-item">
                    <a href="#step4" data-toggle="tab" aria-controls="step4" role="tab" title="Step 4" class="nav-link disabled navigation">
                        <span class="round-tab">
                            <i class="fa fa-check"></i>
                        </span>
                    </a>
                </li>
            </ul>
        </div>
        <!-- ============================================================ CONTENT ============================================================ -->
        <!-- ======================================== Schritt 1 - Warenkorb ======================================== -->
        <div class="tab-content ">
            <div class="tab-pane active text-center " role="tabpanel" id="step1">
                <h2>Warenkorb</h2>
                <div class="row">
                </div>

                @if (Model.VmWarenkorbIndexListe.Count == 0)
                {
                    <br />
                    <br />
                    <h1 class="text-center">Leider haben Sie noch keine Bücher im Warenkorb :-(</h1>
                    <br />
                    <h2 class="text-center"><a href="/Buch/Buchliste">Hier können Sie nach Büchern suchen :-)</a></h2>
                }
                else
                {
                    <div class="container">
                        <table id="cart" class="table table-hover table-condensed ">
                            <thead>
                                <tr>
                                    <th></th>
                                    <th style="width:40%" class="h4 text-left">@Html.DisplayName("Titel")</th>
                                    <th class="text-center h5" style="width:3%">@Html.DisplayName("Ausgabe")</th>
                                    <th class="text-center h5" style="width: 20%">@Html.DisplayName("ISBN")</th>
                                    <th class="text-center h5" style="width:10%">@Html.DisplayName("Preis")</th>
                                    <th class="text-center h5">@Html.DisplayName("Anzahl")</th>
                                    <th class="text-center h5">@Html.DisplayName("Zeilenpreis")</th>
                                    <th></th>
                                </tr>
                            </thead>

                            <tbody class="border-bottom">
                                @foreach (var buch in Model.VmWarenkorbIndexListe)
                                {
                                    <tr>

                                        <td data-th="Bild" class="zoom">
                                            <img src="@buch.BildPfad" alt="@buch.BildAltText" width="70" onclick="location.href = '@(Url.Action("Detail", "Buch", new { buchId = buch.Id }))'" />
                                        </td>

                                        <td data-th="Buch" class="align-middle" data-toggle="tooltip" data-placement="bottom" title="Für Beschreibung bitte klicken">
                                            <h6 class="nomargin text-left" data-toggle="collapse" data-target="#buch">@buch.Titel</h6>
                                            <p class="collapse" id="buch">Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Lorem ipsum dolor sit amet.</p>
                                        </td>

                                        <td data-th="Ausgabe" class="text-center align-middle h6">@buch.Ausgabe</td>
                                        <td data-th="ISBN" class="text-center align-middle h6">@buch.Isbn</td>
                                        <td data-th="Preis" class="text-center align-middle h6">@buch.PreisProTag.ToString("F2") €</td>
                                        <td data-th="Anzahl" class="text-center align-middle h6">@buch.Anzahl</td>
                                        <td data-th="Zeilenpreis" class="text-right align-middle h6">@buch.ZeilenPreisProTag.ToString("F2") €</td>

                                        <td class="actions align-middle" data-th="">
                                            <a class="btn btn-outline-danger " href="/Warenkorb/Entfernen?buchId=@buch.Id&anzahl=1" role="button" aria-expanded="false">
                                                <i class="fa fa-lg fa-minus-square"></i>
                                            </a>
                                            <a class="btn btn-danger " href="/Warenkorb/Entfernen?buchId=@buch.Id&anzahl=@buch.Anzahl" role="button" aria-expanded="false">
                                                <i class="fa fa-lg fa-cart-arrow-down"></i>
                                            </a>
                                        </td>
                                    </tr>
                                }
                            </tbody>
                            <tfoot>
                                <tr>
                                    <td colspan="5"></td>
                                    <td class="hidden-xs"><strong class="h4 text-primary">Gesamtpreis </strong></td>
                                    <td class="hidden-xs text-right"><strong class="h4 text-primary">  @Model.VmWarenkorbIndexListe.Sum(s => s.ZeilenPreisProTag).ToString("F2") €</strong></td>
                                    <td></td>
                                </tr>
                                <tr>
                                    <!-- ======================================== Schritt 2 - Ausleihdatum ======================================== -->
                                    <td> <a onclick="goBack()" class="btn btn-warning "><i class="fa fa-angle-left"></i> Weiter einkaufen</a></td>
                                    <td colspan="6"></td>
                                    <td class="wizard-inner">
                                        <a href="#step2" title="Step 2" class="btn btn-success next-step">Jetzt Bestellen <i class="fa fa-angle-right"></i> </a>
                                    </td>
                                </tr>
                            </tfoot>
                        </table>
                    </div>
                }
            </div>
            <!-- ======================================== Schritt 2 - Ausleihdatum ======================================== -->
            @Html.Partial("_Bestellen", Model)

            <!-- ======================================== Schritt 3 - Rechnung- und Lieferadresse ======================================== -->
            @Html.Partial("_Rechnungsdaten", Model)
            
            
              <!-- ======================================== Schritt 4 - Bezahlmöglichkeit ========================================
            <div class="tab-pane" role="tabpanel" id="step4">
                <h1 class="text-md-center">Step 4</h1>
                <div class="row">

                </div>
                <ul class="list-inline text-md-center">
                    <li><button type="button" class="btn btn-lg btn-common next-step next-button">Next Step</button></li>
                </ul>
            </div>
            -->
            @Html.Partial("_Danke")

        </div>
    </div>
</form>

这是主视图

这是局部视图

<div class="tab-pane text-center" role="tabpanel" id="step2">
    <h2>Ihre Bestellung </h2>
    <div class="row">


        @using (Html.BeginForm("Bestellen", "Warenkorb", FormMethod.Post))
        {
            <div class="container">
                <div></div>
                <table id="cart" class="table table-hover table-condensed ">
                    <thead>
                        <tr>
                            <th style="width:20%" class="h4 text-left">@Html.DisplayName("Titel")</th>
                            <th class="text-center h5" style="width:20%">@Html.DisplayName("ISBN")</th>
                            <th class="text-left h5" style="width: 20%">@Html.DisplayName("Autoren")</th>
                            <th class="text-center h5" style="width: 5%">@Html.DisplayName("Ausgabe")</th>
                            <th class="text-center h5">@Html.DisplayName("Anzahl")</th>
                            <th class="text-center h5">@Html.DisplayName("Zeilenpreis")</th>
                            <th class="text-center h5">
                                @Html.DisplayName("Rückgabedatum")
                            </th>
                        </tr>
                    </thead>
                    <tbody class="border-bottom">
                        @foreach (var buch in Model.VmBestellen.Warenkorb)
                        {
                            <tr>

                                <td data-th="Buch" class="align-middle">
                                    <h6 class="nomargin text-left">@buch.Titel</h6>

                                </td>
                                <td data-th="ISBN" class="text-center align-middle h6">@buch.ISBN</td>
                                <td data-th="Autoren" class="align-middle h6">
                                    @foreach (var autor in buch.Autoren)
                                    {
                                        <span>@autor<br /></span>
                                    }
                                </td>
                                <td data-th="Ausgabe" class="text-center align-middle h6">@buch.Ausgabe</td>
                                <td data-th="Anzahl" class="text-center align-middle h6">@buch.Anzahl</td>
                                <td data-th="Zeilenpreis" class="text-right align-middle h6">@buch.ZeilenPreisProTagNetto.ToString("F2") €</td>

                                <td data-th="Datum">
                                    @Html.EditorFor(model => model.VmBestellen.RueckgabeDatum, new { htmlAttributes = new { @type = "date", @name = "rueckgabedatum", @value = Model.VmBestellen.RueckgabeDatum.ToString("dd.MM.yyyy"), @class = "form-control" } })
                                        @Html.ValidationMessageFor(model => model.VmBestellen.RueckgabeDatum, "", new { @class = "text-danger" })
                                    <button type="submit" formmethod="get"> Datum ändern</button>
                                </td>
                            </tr>
                        }
                    </tbody>

                    <tfoot>
                        <tr>
                            <td colspan="3" class="hidden-xs"></td>
                            <td class="hidden-xs" colspan="2"><strong class="h5 ">Preis  <strong class="h6">(exkl. Mwst)</strong>  </strong></td>
                            <td class="hidden-xs text-right"><strong class="h5 ">  @Model.VmBestellen.Warenkorb.Sum(s => s.ZeilenPreisProTagNetto).ToString("F2") €</strong></td>
                            <td class="hidden-xs"> <strong class="h5">Beginn: <bdi class="text-primary">@DateTime.Now.ToShortDateString() </bdi></strong></td>
                        </tr>
                        <tr>
                            <td colspan="3" class="hidden-xs"></td>
                            <td class="hidden-xs" colspan="2"><strong class="h6 ">Rabatt </strong></td>
                            <td class="hidden-xs text-right"><strong class="h6 "> - Rabatt -</strong></td>
                            <td class="hidden-xs"><strong class="h5">Ende: <bdi class="text-primary ">@Model.VmBestellen.RueckgabeDatum.ToShortDateString() </bdi></strong></td>
                        </tr>
                        <tr>
                            <td colspan="3" class="hidden-xs"></td>
                            <td class="hidden-xs" colspan="2"><strong class="h6 ">Mwst </strong></td>
                            <td class="hidden-xs text-right"><strong class="h6 "> @Model.VmBestellen.MwstBetrag.ToString("F2") €</strong></td>
                            <td class="hidden-xs"><strong class="h5"> Tage Gesamt:  <bdi class="text-primary">XX</bdi> </strong> </td>
                        </tr>
                        <tr>
                            <td colspan="3" class="hidden-xs"></td>
                            <td class="hidden-xs" colspan="2"><strong class="h4 text-primary">Preis <strong class="h6 text-primary">(inkl. Mwst)</strong> </strong></td>
                            <td class="hidden-xs text-right"><strong class="h4 text-primary"> @Model.VmBestellen.GesamtpreisBrutto.ToString("F2") €</strong></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- ======================================== Schritt 3 - Abschluss ========================================-->
                            <td > <a onclick="goBack()"  class="btn btn-warning btn-block "><i class="fa fa-angle-left"></i> Zurück zum Warenkorb</a></td>
                            <td colspan="5"></td>
                            <td class="wizard-inner">                              
                                <a href="~/Warenkorb#step3" title="Step 3" class="btn btn-success next-step btn-block" onclick="bestellen()">Bestellung abschließen <i class="fa fa-angle-right"></i> </a>
                            </td>
                        </tr>


                    </tfoot>
                </table>
            </div>

        }
    </div>
</div>

这是a href-目前仅调用一个链接-但我需要调用该链接,并用相同的单击调用POST-ActionResult

我以为我可以调用POST ActionResult,然后从那里重定向到特定的#id

0 个答案:

没有答案
相关问题