我有麻烦的ASP获得选择的值:DropDownList的。我正在使用AJAX并且想要动态更新Default.aspx页面。这是行得通的,但是,从DropDownList中检索的值没有正确传递给ASP函数。的DropDownList的SelectedValue不工作
的ASP函数返回的东西,只是没有一个字符串。我是否正确地做这件事?
的Default.aspx:
<script type="text/javascript">
// Calls an ASP function, gets user surname
function GetData(){
var response = UserForm.GetData();
alert (response); // returns [object object]
document.getElementById("surnameLabel").innerHTM = response;
}
</script>
<asp:SqlDataSource
id="Users"
runat="server"
connectionstring="<%$ ConnectionStrings:ConnectionString %>"
selectcommand="select username, userid from users"
>
</asp:SqlDataSource>
<asp:DropDownList
id="UserList"
name="UserList"
runat="server"
DataSourceID="Users"
DataTextField="username"
DataValueField="userid"
>
</asp:DropDownList>
<input type="button" onclick="GetData();" value="Get Surname" />
<asp:Label name="surnameLabel" id="surnameLabel" Text="No user selected"></asp:Label>
Default.aspx.cs:
public partial class UserForm : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(AwardsForm));
if (!this.IsPostBack) { }
}
// This function is called from the javascript function and looks up the users surname
[Ajax.AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public string GetData()
{
string userid = UserList.SelectedValue.ToString(); // this value keeps on equalling null
// Do some SQL using this ID to look up user surname
return Surname;
}
}
对,你知道是否有更新的方法,人们用这种东西?我试图将一个Javascript变量传递给ASP函数,但由于某种原因它不起作用。 所有我需要做的是动态的SQL查询,只要值变回ASPX没有一个总的刷新。 – 2011-12-15 03:32:54