Frage

Ich habe eine HTML-Taste Setup und funktioniert mit einem festgelegten Bereich der erforderlichen Eigenschaften, die ich stattdessen auf einen textbasierten Link umwandeln möchten. Darüber hinaus, so kann ich mich vertraut mit Arbeits html Helfern und intellesense Ich mag würde, um zu sehen, wie diese Eigenschaften in eine Action Schuhanzieher:

<input type="button" id="RemoveRegistration_Submit<%=row.ID %>" 
value="Remove From Cart" 
onclick="$('#Step2_RemoveRegistrationForm input[name=id]').val('<%=row.ID %>'); $('#Step2_RemoveRegistrationForm').submit();" 
align="right" />

thx

War es hilfreich?

Lösung

Es sollte nicht so schwer sein .... aber ich glaube, Sie Html.Link bedeuten, weil Action meinen Sie Link von Routentabelle generieren müssen.

<%= Html.Link("Remove from Cart", "#", new {onclick = "#Step2_RemoveRegistrationForm input[name=id]').val('<%=row.ID %>'); $('#Step2_RemoveRegistrationForm').submit();"}) %>
  • param # 1: linktext
  • param # 2: href
  • param # 3: Htmlattributes

    public static String-Link (dieser Htmlhelper Htmlhelper, String linktext, string href, Objekt Htmlattributes) {

    TagBuilder TagBuilder = new TagBuilder ( "a") {Innerhtml = linktext; }

    tagBuilder.MergeAttributes (Htmlattributes);

    tagBuilder.MergeAttributes ( "href" href);

    Rückkehr tagBuilder.ToString (TagRenderMode.Normal);

    }

und vergessen Sie nicht auf <% @ Import Namespace = „xxxxxx“%> auf der Ansicht, um die Erweiterungsmethode zu verwenden.

Andere Tipps

Buttons können nicht wie Links ohne Javascript handeln.
In der Regel - das ist eine schlechte Praxis (Suchmaschinen können Ihre Seite korrekt usw. nicht Index).

Ich würde Ihnen empfehlen Anker-Tags zu verwenden und sie wie ein Tasten aussehen.

Aber wenn Sie wirklich brauchen es - this Artikel enthält eine Antwort.

EDIT:

Es tut uns leid. Schuss meiner Antwort wenig zu schnell.

Dies ist nicht genau das, was Sie fordern (Htmlhelper nicht beteiligt ist), aber das ist, wie ich dieses Problem lösen würde:

im Hinblick auf i Anker definieren würde (Anker ohne hrefs Do not Pass W3 Validierung):

<a id='removefromcart_<%=row.ID%>' title='Remove from cart' 
   class='remove-link' />

in externer JavaScript-Datei:

   var onclick = function(event){
        event.preventDefault();
        var link = $(event.targetSource());

        //tag ids should be injected through view asp/cx
        $('#Step2_RemoveRegistrationForm input[name=id]') 
            .val(link.attr('id').split('_')[1])
    };
    $('a[id^=removefromcart]').click(onclick);  

in CSS:

 a {cursor:pointer;} /*anchors without href by default haven't pointer*/

Ich glaube, es wäre zu chaotisch mit Javascript herumzustochern in HtmlHelpers.

EDIT2:

Anchor Text innerhalb von Tags definiert. Ich verwechseln immer. Und es scheint, dass targetSource () ist auch falsch . Versuchen Sie, zu umschreiben. Event.targetSource () => event.target

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top