2015-09-04 2 views
0

Я привязал текстовое поле к БД, но я не знаю, как отправить идентификатор клиента, чтобы показать свои данные на другой странице, когда я нажимаю на имя из текстового поля автозаполнения и имя выбирается в текстовом поле.Как отправить сообщение без кнопки в текстовом поле автозаполнения?

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#txtSearch').autocomplete({ 
      source: 'SearchHandler.ashx' 
     }); 
    }); 

</script> 

Вот код за

public class SearchHandler : IHttpHandler 
{ 
    public void ProcessRequest(HttpContext context) 
    { 
     string term = context.Request["term"] ?? ""; 
     List<string> listSearch = new List<string>(); 
     List<string> IDsearch = new List<string>(); 

     string cs = ConfigurationManager.AppSettings["dbpath"]; 
     using (SqlConnection con = new SqlConnection(cs)) 
     { 
      SqlCommand cmd = new SqlCommand("searchFriend", con); 
      cmd.CommandType = CommandType.StoredProcedure; 
      cmd.Parameters.Add(new SqlParameter() 
      { 
       ParameterName="@term", 
       Value = term 
      }); 
      con.Open(); 
      SqlDataReader dr = cmd.ExecuteReader(); 

      while(dr.Read()) 
      { 
       listSearch.Add(dr["UInfo"].ToString()); 
       IDsearch.Add(dr["UId"].ToString()); 
      } 
     } 

     JavaScriptSerializer js = new JavaScriptSerializer(); 
     context.Response.Write(js.Serialize(listSearch)); 
    } 
} 

ответ

0

Использование выберите событие: http://api.jqueryui.com/autocomplete/#event-select

 $('#txtSearch').autocomplete({ 
      source: 'SearchHandler.ashx', 
      select: function(event, ui) { 
       //submit form here 
       document.forms[0].submit(); 
      } 
     }); 

Если вам нужно получить выбранное значение, используйте крупное событие, а затем получить значение из текстового поля и используйте его, как вы хотите:

 $('#txtSearch').autocomplete({ 
      source: 'SearchHandler.ashx', 
      close: function(event, ui) { 

       var userid = $(this).val(); 

       //open new window with customer info 
       window.open('CustomerInfo.aspx?Customer=' + userid); 


      } 
     }); 
+0

спасибо за помощь, но как я могу перейти на другую страницу, чтобы показать больше информации об этом человеке, который был выбран – rezi

+0

Обновлено сообщение. Это то, чего вы хотели достичь? –

+0

Да, я хотел перейти на другую страницу после отправки, по ID человека, который был выбран – rezi

Смежные вопросы