2016-10-13 3 views
0

Ich möchte mein Formular auf die Eingabetaste senden, wenn es Textfeld ist. Das ist mein HTML-Code:Absenden am Eingabetaste in Textfeld

<form class="locationform" id="locationform" method="get"> 
    <fieldset class="col-md-12 center" id="Searchform"> 
    <h4><b>Job Search</b></h4> 
    <div> 
     <label for="Locationtxt" style="padding-right:5px"><b>Location:</b></label> 
     <input id="Locationtxt" name="name" type="text" placeholder="Zip Code or City, State" runat="server" required> 
     <asp:Button CssClass="BtnSubmit" ID="BtnSubmit" runat="server" Text="Submit" OnClick="BtnSubmit_Click" /> 
    </div> 
    </fieldset> 
</form> 

Dies ist der Code, den ich in JQuery versucht:

$("#Locationtxt").keyup(function (event) { 
    if (event.keyCode == 13) { 
     $("#BtnSubmit").click(); 
    } 
}); 

Dies ist, was html nach Laden der Seite gerendert

<form class="locationform" id="locationform" method="get"> 
    <fieldset class="col-md-12 center" id="Searchform"> 
    <h4><b>Store Job Search</b></h4> 
    <div> 
     <label for="Locationtxt" style="padding-right:5px"><b>Location:</b></label> 
     <input name="dnn$ctr2781$View$Locationtxt" type="text" id="dnn_ctr2781_View_Locationtxt" placeholder="Zip Code or City, State" required="" /> 
     <input type="submit" name="dnn$ctr2781$View$BtnSubmit" value="Submit" id="dnn_ctr2781_View_BtnSubmit" class="BtnSubmit" style="color:White;background-color:Black;font-weight:bold;" /> 
    </div> 
    </fieldset> 
</form> 
<div id="dnn_ctr2781_View_storedetails"></div> 
<script> 
    function LoadMap(obj) { 
     var fsid = obj; 
     $('#Iframe_' + fsid).attr('src', $('#hdn_' + fsid).attr('value')); 
    } 
    $(document).ready(function() { 
     $("input").keyup(function (event) { 
      if (event.keyCode == 13) { 
       $("[id$='BtnSubmit']").click(); 
      } 
     }); 
    }); 

</script> 

Dies gilt nicht gearbeitet heraus zu mir. Kann mir jemand dazu vorschlagen?

+0

Sie müssen darauf achten, dass dieses Ereignis gebunden ist _nach_dem DOM initialisiert wurde, andernfalls wird es nicht funktionieren. Fügen Sie diesen Abschnitt Ihres clientseitigen Codes hinzu. – arkascha

+0

@arkascha - Dies ist die vollständige Client-Seite Code, was ich habe – Jaggi

+0

Ok, das kann nicht einfach so funktionieren. Vielleicht möchten Sie ein paar Tutorials über jquery und event handling durcharbeiten ... Die Ansätze in den beiden Antworten sehen gut aus, nicht sicher, was das eigentliche Problem ist. Oh, hast du _did_ die jquery-Bibliothek geladen? Bitte öffnen Sie Ihre Browser-Entwicklungskonsole und suchen Sie nach Javascript-Fehlern! – arkascha

Antwort

0

Stattdessen ID Name $("#Locationtxt").keyup(function (event) des Gebens gab ich Elementname $("input").keyup(function (event).

Das löste mein Problem.

$(document).ready(function() { 
     $("input").keyup(function (event) { 
      if (event.keyCode == 13) { 
       $("[id$='BtnSubmit']").click(); 
      } 
     }); 
    }); 
1

Haben Sie versucht, Ihren Code hinzuzufügen, wenn das Dokument fertig ist?

$(document).ready(function() { 
    $("#Locationtxt").keyup(function (event) { 
    if (event.keyCode == 13) { 
     $("#BtnSubmit").click(); 
    } 
    }); 
}); 
+0

Das hat nicht funktioniert – Jaggi

1

Versuchen Sie es.

$("#Locationtxt").keyup(function (event) { 
    if (event.keyCode == 13) { 
    $("#locationform").submit(); 
    } 
}); 
+0

-Dies funktioniert nicht – Jaggi

Verwandte Themen