2016-07-25 14 views
0

のアドレスオートコンプリート機能をonkeyup()イベントのasp.netテキストボックスに実装しています。javascriptイベントを使用してJavaScriptコードの一部を追加および削除する方法

ユーザーが最低7文字を入力した後にのみ、オートコンプリート機能を起動します。

初めて正常に動作します。ただし、ユーザーが入力ボックスをクリアすると、1文字入力してもオートコンプリート機能が働きます。

これは、これを実装するJavaScriptコードが既に存在するためです。ページをリロードした後、再び動作します。

ページリロードなしで動作させる方法はありますか?続き

は私のコードです:あなたのコードに基づいて

<asp:textbox id="txtAddressInput" runat="server" autocomplete="false" onkeyup="input_onchange(this)"></asp:textbox> 
<script> 
     function input_onchange(me) { 
       if (me.value.length > 7) { 
       autocomplete = new google.maps.places.Autocomplete(
       (document.getElementById('txtAddress')), 
       { types: ['geocode'] }); 
     } 
      google.maps.event.addDomListener(document.getElementById('txtAddress'), 'keydown', function (e) { 
       if (e.keyCode == 13 && $('.pac-container:visible').length) { 
        e.preventDefault(); 
       } 
     }); 
    } 
<script> 
+0

(あなたの代わりに>=>を使用している)ではない7、8文字以上が必要になります場合は、おそらくhttp://stackoverflow.com/ような何かをする必要がありますa/22862011/14104 – epascarello

+0

ありがとうございます。それが助けになった! – Massey

答えて

0

あなただけのオートコンプリートのオブジェクトをクリアelse文を必要とするように見えます。

else if (me.value.length < 7 && autocomplete != null) { 
    autocomplete = null; 
} 

のようなものも、あなたの文は

+0

もしそうだとしたら、試してみましたが、うまくいきませんでした。ありがとう – Massey

関連する問題