2014-02-14 32 views
0

我想從數據庫填充文本框下拉列表選擇索引更改沒有頁面發佈回。下拉選擇索引更改無回發沒有更新面板需要

我嘗試下面的代碼它不工作

<script runat="server"> 
private String queryString; 

protected void Page_PreRender(object sender, EventArgs e) 
{ 
if (!String.IsNullOrEmpty(queryString)) 
    { 
     Class1 obj = new Class1(); 
     if (ddlEmployee.SelectedIndex >= 0) 
     { 
      System.Data.DataSet ds = obj.BindDataSet("Select ID,Email from EmployeeDetails where ID=" + ddlEmployee.SelectedValue); 
      txtEmail.Text = ds.Tables[0].Rows[0][1].ToString(); 
     } 
    } 
} 

protected void Page_Init(object sender, EventArgs e) 
{ 
    queryString = "?foo=bar;a=b"; 
} 
</script> 
+0

爲什麼你不能使用'UpdatePanel' ? –

+0

如果UpdatePanel不是一個選項,請閱讀AJAX – Dimitri

回答

0

查找到ASP.NET PageMethods。這裏有一個例子:

<form id="form1" runat="server"> 
     <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager> 
     <asp:DropDownList ID="ddlEmployee" runat="server"> 
      <asp:ListItem Selected="True" Value="1">One</asp:ListItem> 
      <asp:ListItem Value="2">Two</asp:ListItem> 
      <asp:ListItem Value="3">Three</asp:ListItem> 
      <asp:ListItem Value="4">Four</asp:ListItem> 
      <asp:ListItem Value="5">Five</asp:ListItem> 
     </asp:DropDownList> 
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
</form> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script> 
<script type="text/javascript"> 
     $(function() { 
       $("#ddlEmployee").on("change", function() { 
       PageMethods.SetText($(this).val(), OnSetCompleted); 
     }); 

     function OnSetCompleted(result) { 
      $("#TextBox1").val(result); 
     } 
</script> 

在後臺代碼:

[System.Web.Services.WebMethod()] 
[System.Web.Script.Services.ScriptMethod()] 
public static string SetText(string id) 
{ 
     //do your DB stuff here 
     return "You selected " + id; 
} 

檢查這些:

http://weblogs.asp.net/jalpeshpvadgama/archive/2012/01/07/asp-net-page-methods-with-parameters.aspx

http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/

+0

的工作正常。 thnks –

相關問題