2016-02-12 2 views
0

Я хочу вызвать метод C# «test()», который загружает данные из базы данных. Этот вызов должен быть в каждом изменении моих значений TextBoxes. У меня есть два текстовых поля, и когда я что-то пишу, там должно появиться gridview (это то, что должен делать test()). Я использую jQuery для вызова test() в каждом changement из TextBoxes без использования какой-либо кнопки, но это не мог run..I признателен за любую помощь :)Вызов метода C# при изменении значений TextBoxes без нажатия кнопки

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
<script> 
    $(document).ready(function() { 
     $(".calculate").each(function() { 
      $(this).keyup(function() { 
       $.ajax({ 
        type: "POST", 
        url: "FirstPage.aspx/test", 
        contentType: "application/json; charset=utf-8", 
        dataType: "json", 
        success: function(response) { 
         $("#Content").text(response.d); 
        }, 
        failure: function(response) { 
         alert(response.d); 
        } 
       }); 
      }); 
     }); 
    }); 
</script> 

в Textboxes:

<asp:TextBox ID="TextBox1" runat="server" Width="140px" Height="16px" CssClass="calculate" ></asp:TextBox> 

<asp:TextBox ID="TextBox2" runat="server" Width="140px" Height="16px" CssClass="calculate" ></asp:TextBox> 

Test():

protected void test(object sender, EventArgs e) 
    { 
    load(); 
    } 


    protected string load() 
    { 

     SqlConnection con = new SqlConnection(); 
     con.ConnectionString = @"Data Source=ic-webdev;Initial Catalog=intracall;User ID=sa;Password=xs4intracall"; 
     con.Open(); 

     SqlDataAdapter ada = new SqlDataAdapter("SELECT COUNT(*) as Count where Firstname='"+TextBox1+"' and Lastname='"+TextBox2+"' FROM contact", con); 
     DataTable dt = new DataTable(); 
     ada.Fill(dt); 
     GridView1.DataSource = dt; 
     GridView1.DataBind(); 

     con.Close(); 

} 
+1

https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.textbox.textchanged(v=vs.110).aspx –

+0

ли тест() работать? (если вы положили точку останова) – nAviD

+0

@ParkashKumar в прошлый раз я использовал, что это вызвало обратную передачу при каждом нажатии клавиши. Что-то изменилось? –

ответ

0

Try это

$("input").keyup(function() { 
     alert("dsfd"); 
     $.ajax({ 
      type: "POST", 
      url: "FirstPage.aspx/test", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (response) { 
       $("#Content").text(response.d); 
      }, 
      failure: function (response) { 
       alert(response.d); 
      } 
     }); 
    }); 
+0

Он не запускает мой функциональный тест() .. он показывает мне только окно предупреждения – Manou

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