取消选中文字输入&的复选框选中复选框时清除文本输入

时间:2017-07-09 17:44:01

标签: html css angular checkbox input

我有一个搜索栏和复选框:

<input type="text" placeholder="Search..." (keyup)="onKey()" [(ngModel)]="input">
<input type="checkbox" (click)="clearSearch()" [(ngModel)]="checkbox">View All

每当有人输入搜索栏时,我都希望取消选中该复选框。 同样,每当有人检查复选框时,我都希望清除搜索栏。

我尝试了以下内容:

export class App {
 checkbox = ['checked']
 clearSearch() { 
 this.input = '';
};
onKey() { 
 checkbox = ['unchecked']
}

但它显然不太有用。

以下代码为https://plnkr.co/edit/uAYxswpoz18jlRUqAMn5?p=preview

哪种方法可以实现此功能?

谢谢!

2 个答案:

答案 0 :(得分:2)

你快到了。首先,我建议您对复选框数据模型使用布尔值。 Array计算结果为true,因此仍然选中复选框。如果引用实例属性,则应使用单词this引用它们。所以方法onKey()应该是:

onKey() { 
 this.checkbox = false
}

plunker

答案 1 :(得分:1)

在你的函数中,使this.checkbox为false。

 onKey() { 
     this.checkbox = false;
  }

你的功能

/// <summary>
///   Creates a nearest neighbor algorithm with the feature points as
///   inputs and their respective indices a the corresponding output.
/// </summary>
/// 
protected virtual IMulticlassScoreClassifier<T> CreateNeighbors(T[] features)
{
    int[] outputs = Vector.Range(0, features.Length);

    // Create a k-Nearest Neighbor classifier to classify points
    // in the second image to nearest points in the first image
    return new KNearestNeighbors<T>(K, Distance).Learn(features, outputs);
}

<强> DEMO