html - 当 angular 2 中发生 keyup 事件时,防止点击事件默认

标签 html css angular2-forms

在触发 keyup 事件时在搜索输入字段中显示数据,在 keyup 事件再次触发后单击事件正在工作,但我希望一旦 keyup 或 click 被触发,其他事件将不起作用。

这是我在 header.html

中的表单
<form>
     <div class="box">
         <div class="container-1">
            <input type="search" id="search" placeholder="Type 
                 your search..." name="searchStr" (keyup.enter)="searchKey(input.value)" 
                [(ngModel)]="searchStr" #input>
            <a (click)="searchKey(input.value)"><img 
              src="/assets/search.png" class="search-img"></a>
        </div>
     </div>
</form>

这是我的header.component.ts

searchKey(value: any) {
    console.log(value);
    this.router.navigate(['search', { searchkey : value }]);
}

提前致谢。

最佳答案

尝试设置一个标志变量来检查是否搜索,

export ... {

    flag = true;

    searchKey(value: any) {
        console.log(value);
        this.flag && this.router.navigate(['search', { searchkey : value }]);
        this.flag=false;
    }

    // don't forget to add a condition when flag must be set to true.
}

希望对您有所帮助。

关于html - 当 angular 2 中发生 keyup 事件时,防止点击事件默认,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44430219/

相关文章:

html - flex 容器中的等高行

html - bootstrap 3 折叠导航栏 - 展开时下拉标题超出屏幕

javascript - 如何在 Angular2 中使禁用的 react 表单可编辑

forms - 设置初始值Angular 2 reactive formarray

html - div 后面的隐藏按钮仅显示提示

javascript - slider 加载问题

html - overflow:hidden 不剪辑绝对定位的内容

css - IE 中的粘性页脚问题 - 使用 wordpress

Angular 属性指令表单输入

html - 如何使用golang连接 anchor 标签的href属性中变量中的值