【问题标题】:How to add and remove part of javascript code through a javascript event如何通过 javascript 事件添加和删除部分 javascript 代码
【发布时间】:2016-11-29 08:09:15
【问题描述】:

我在 asp.net 文本框的 onkeyup() 事件中实现地址自动完成功能。

我希望仅在用户输入至少 7 个字符后才能启动自动完成功能。

第一次可以正常使用。但是,一旦用户清除输入框,即使输入单个字符,自动完成功能也会起作用。

这是因为实现它的 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>

【问题讨论】:

标签: javascript jquery asp.net


【解决方案1】:

根据您的代码,您似乎只需要一个 else 语句来清除自动完成对象。像

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

此外,您的 if 语句至少需要 8 个字符,而不是 7 个(您使用的是 &gt; 而不是 &gt;=

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-06
    • 2014-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多