title: Asp.net mvc a grid automatically gets updated base on typing value on a textbox
body: <p>I want to create a textbox to search for values inside a grid. When I type a text on the textbox, the grid will be updated automatically showing values corresponding to what I have typed without any need for pressing button or enter. How can I do that?
  This is my three textboxes in Index.cshtml file:</p>
  
  <pre><code>&lt;div class="col-md-3"&gt;
  
      &lt;div class="efield awe-il"&gt;@Html.Awe().TextBox("txtVINnumber").Placeholder("Find VIN number").CssClass("searchtxt") &lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="col-md-3"&gt;
      &lt;div class="efield awe-il"&gt;@Html.Awe().TextBox("txtEngineVINnumber").Placeholder("Find Engine VIN number").CssClass("searchtxt") &lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="col-md-3"&gt;
      &lt;div class="efield awe-il"&gt;@Html.Awe().TextBox("txtGoukinumber").Placeholder("Find Gouki number").CssClass("searchtxt") &lt;/div&gt;
  
  &lt;/div&gt;
  </code></pre>
  
  <p>And this is my action method:</p>
  
  <pre><code> public ActionResult GetItems(GridParams g, int? atdid, bool? showDeleted, string vinNumber, string engineVinNumber, string goukiNumber)
          {
              vinNumber = (vinNumber ?? "").ToLower();
              engineVinNumber = (engineVinNumber ?? "").ToLower();
              goukiNumber = (goukiNumber ?? "").ToLower();
  
              IQueryable&lt;VehicleRecord&gt; query = _context.VehicleRecords.Where(o =&gt; o.VinNumber.ToLower().Contains(vinNumber) &amp;&amp; o.EngineVin.ToLower().Contains(engineVinNumber) &amp;&amp; o.GoukiNumber.ToLower().Contains(goukiNumber)).AsQueryable().Include(p =&gt; p.Spot).Include(l =&gt; l.VehicleLocation);
              int id = Convert.ToInt32(g.Key);
              if (showDeleted.HasValue)
              {
                  query = query.Where(p =&gt; p.IsDeleted == showDeleted.Value);
              }
              if (!vinNumber.IsEmpty())
              {
                  query = query.Where(o =&gt; o.VinNumber.Equals(vinNumber));
              }
  
              return Json(new GridModelBuilder&lt;VehicleRecord&gt;(query, g)
              {
                  Key = "Id",// needed for Entity Framework | nesting | tree
  
                  Map = o =&gt; new
                  {
                      o.Id,
                      o.VinNumber,
                      o.EngineVin,
                      o.GoukiNumber,
                      Position = string.Format("{0} - spot # {1}", o.VehicleLocation.Name, o.Spot.SpotNumber),
                      o.IsDeleted
  
                  }
                  ,
                  GetItem =
                      () =&gt; query.FirstOrDefault(x =&gt; x.Id == id)
              }
                  .Build());
  
  
          }
      }
  </code></pre>
  
  <p>Edit: This is what i have done so far</p>