2016-05-12 2 views
0

Ich suchte viel Platz, aber ich verstehe jquery nicht genug, um erfolgreich die Antworten zu verwenden, die ich finde.jQuery Autocomplete Trigger Return on select

Ich muss Doubletab zurückgeben, um meine Textbox zu triggern ontextchanged Ereignis, damit meine Gridview aktualisiert wird.

Mein Skript zur automatischen Vervollständigung funktioniert proberly und sieht wie folgt aus:

<script type="text/javascript" lang="ja"> 
    $(function() { 
     $('#tbCompany').autocomplete({ 
      source: function (request, response) { 
       $.ajax({ 
        url: "Autocomplete.asmx/GetCompanyNames", 
        data: "{ 'searchTerm': '" + request.term + "' }", 
        type: "POST", 
        dataType: "json", 
        contentType: "application/json;charset=utf-8", 
        success: function (result) {       
         response(result.d);        
        },      
        error: function (result) { 
         alert('There is a problem processing your request'); 
        } 
       }); 
      }, 
      minLength: 0 
     }); 
    }); 
</script> 


<asp:TextBox runat="server" ID="tbCompany" placeholder="Bitte Ausfüllen" ClientIDMode="static" OnTextChanged="tbCompany_TextChanged" Width="400px" Visible="false" TabIndex="1" /> 


<asp:UpdatePanel runat="server"> 
     <ContentTemplate> 
      <asp:GridView ID="gvVerzeichniss" runat="server" AutoGenerateColumns="false" OnRowCommand="gvVerzeichniss_RowCommand" CssClass="mGrid" AlternatingRowStyle-CssClass="alt" PagerStyle-CssClass="pgr" GridLines="None" ShowHeader="false" style="width: 1300px !important;"> 
       <Columns> 
         <asp:ButtonField ButtonType="Link" Text="view" CommandName="view" HeaderText="Show" Visible="true" ControlStyle-Width="40px" ControlStyle-ForeColor="#428bca"/> 
         <asp:CheckBoxField HeaderText="Active" ReadOnly="false" DataField="Active" ControlStyle-Width="10px" /> 
       </Columns> 
      </asp:GridView> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="tbCompany"/> 
     </Triggers> 
    </asp:UpdatePanel> 

Es sollte auslösen die die OnTextChanged Ereignis der Textbox auf ausgewählten eines Artikels, aber ich weiß nicht, wie das zu schreiben.

+0

Freigabe, die Sie HTML-Code suchen. –

+0

vergaß das, eddited es. – MaxW

Antwort

0

Im Grunde senden Sie Ajax-Aufruf innerhalb der Autovervollständigung während der automatischen Vervollständigung Bindung nach Daten vom Dienst erhalten.

Ihre result.d müssen json Daten haben.

Wenn ich richtig verstehe Sie so etwas wie diese auch

<script type="text/javascript" lang="ja"> 
    $(function() { 
      $.ajax({ 
       url: "Autocomplete.asmx/GetCompanyNames", 
       data: "{ 'searchTerm': '" + request.term + "' }", 
       type: "POST", 
       dataType: "json", 
       contentType: "application/json;charset=utf-8", 
       success: function (result) {       
        $('#'+'<%= tbCompany.ClientID %>').autocomplete({ 
        source: result.d, 
        minLength: 0 
        });       
       },      
       error: function (result) { 
        alert('There is a problem processing your request'); 
       } 
      }); 
    }); 
</script> 
+0

fehlt ',' nach result.d – MaxW

+0

Ich habe Update meine Antwort bitte sehen. Wenn Sie klassisches asp.net verwenden, müssen Sie ein Element wie dieses '$ ('#' + '<% = tbCompany.ClientID%>')' auswählen. Welche Klammern? –

+0

Ahh ja das habe ich vergessen. hinzugefügt. :) –