its aspx page:
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"></asp:ToolkitScriptManager>
<asp:DropDownList ID="countriesddl" runat="server"></asp:DropDownList>
<asp:CascadingDropDown ID="countriescdd" TargetControlID="countriesddl" PromptText="Select Country"
PromptValue="" ServicePath="~/servicecon.asmx" ServiceMethod="getcountries" runat="server"
Category="countryid" LoadingText="Loading..."></asp:CascadingDropDown>
<asp:DropDownList ID="stateddl" runat="server"></asp:DropDownList>
<asp:CascadingDropDown ID="statecdd" TargetControlID="stateddl" PromptText="Select Country"
PromptValue="" ServicePath="~/servicecon.asmx" ServiceMethod="getstate" runat="server"
Category="stateid" LoadingText="Loading..."></asp:CascadingDropDown>
its services.asmx page:
[WebMethod]
public CascadingDropDownNameValue[] getcountries(string knownCategoryValues)
{
string query = "select countryname , countryid from country";
List<CascadingDropDownNameValue> country = getdata(query);
return country.ToArray();
}
[WebMethod]
public CascadingDropDownNameValue[] getstate(string knownCategoryValues)
{
string countre = CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues)["countryid"];
string query = string.Format("select statename, stateid from state where countryid = 0", countre);
List<CascadingDropDownNameValue> state = getdata(query);
return state.ToArray();
}
private List<CascadingDropDownNameValue> getdata(string query)
{
string constr = WebConfigurationManager.ConnectionStrings["cdd"].ConnectionString;
SqlCommand cmd = new SqlCommand(query);
List<CascadingDropDownNameValue> values = new List<CascadingDropDownNameValue>();
using (SqlConnection con = new SqlConnection(constr))
{
con.Open();
cmd.Connection = con;
using (SqlDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
values.Add(new CascadingDropDownNameValue
{
name = rdr[0].ToString(),
value = rdr[1].ToString()
});
}
rdr.Close();
con.Close();
return values;
}
}在上面的代码中,对于第一个下拉列表,对于第二个下拉列表,它没有从数据库加载数据,请帮助我,谢谢.
虚拟文本
当你问问题的时候,用更多的词来描述你的问题总是有帮助的。如果真的没有什么可说的,就从网上抄袭一些随意的段落,但要确保你把它们标记为虚拟文本,这样人们就不会注意到它们。
发布于 2014-06-07 02:50:35
在中运行时,第二个SQL返回结果吗?如果第一个查询使用相同的getData函数,则必须是数据本身或sql.如果这两个查询中的所有四列都是字符串,则必须是您的SQL where没有匹配,否则就没有数据。
您肯定有一些州的countryid = 0
https://stackoverflow.com/questions/24092868
复制相似问题