[英]Htmlselect selected index changed event
I have 2 HtmlSelect controls and i need to load second one according to first HtmlSelect's selected index. 我有2个HtmlSelect控件,我需要根据第一个HtmlSelect的选定索引加载第二个。 But it doesn't work, because HtmlSelect doesnt have selectedindexchanged event.
但这不起作用,因为HtmlSelect没有selectedindexchanged事件。 What do i need to do?
我需要做什么? Any idea?
任何想法?
Example; 例;
<!--These are my Html Select controls-->
select runat="server" id="drpCity"></select>
<select runat="server" id="drpState">/select>
protected void Page_Load(object sender, EventArgs e)
{
FillCities(drpCity);
FillStates(drpState, drpCity.SelectedValue);
}
public void FillCitiesHtmlSelect(HtmlSelect drpCity)
{
BusCity busCity = new BusCity();
List<EntCity> lentCity = busCity.SearchAll();
drpCity.DataValueField = EntCity.Columns.CITYCODE;
drpCity.DataTextField = EntCity.Columns.CITYNAME;
drpCity.DataSource = lentCity;
drpCity.DataBind();
drpCity.Items.Insert(0, new ListItem("City", string.Empty));
}
public void FillStatesHtmlSelect(HtmlSelect drpState, string cityCode)
{
if (!string.IsNullOrEmpty(cityCode))
{
BusState busState = new BusState();
List<EntState> lentEmsState = busState.Search(cityCode);
drpState.DataValueField = EntState.Columns.STATECODE;
drpState.DataTextField = EntState.Columns.STATENAME;
drpState.DataSource = lentState;
drpState.DataBind();
}
else
{
drpState.Items.Clear();
}
drpState.Items.Insert(0, "State", string.Empty));
}
I can suggest an approach, though i have not implemented it. 我可以建议一种方法,尽管我尚未实现。 If you can call a javascript function from your one select control to check for a non-default value and if the condition meets, load the second select html.
如果您可以从一个选择控件中调用javascript函数来检查非默认值,并且满足条件,请加载第二个选择html。
HTML select控件没有'selectedindexchanged'事件,而是客户端事件'onchange'。同样,您不能从html select控件调用服务器端。要调用在C#代码页(服务器端)中编写的函数,您需要使用webservice将您的C#函数定义为webmethord,并在html select控件的“ onchange”事件中使用网络服务调用函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.