RadComboBox在单击页面的其他部分时更改所选项目
本文关键字:选项 项目 分时 其他部 单击 RadComboBox | 更新日期: 2023-09-27 17:57:33
如果我选择了RadComboBox的任何项目,接下来当我点击页面的其他部分时,RadComboBBox项目就会发生变化。我该如何解决这个问题?
aspx:
<telerik:RadComboBox ID="cmbExpCTC" runat="server" MarkFirstMatch="true">
</telerik:RadComboBox>
C#:
public void FillStatus()
{
try
{
cmbExpCTC.Enabled = true;
dsLocation = BizRegion.GetCandidateInterviewStatus(hfdcandidateid.Value, hfdjobid.Value, hfdRounds.Value);
RadComboBoxItem cItem = new RadComboBoxItem("Sourcing in process", "Sourcing");
cmbExpCTC.Items.Add(cItem);
if (dsLocation.Tables[0].Rows.Count > 0)
{
for (int i = 0; i <= dsLocation.Tables[0].Rows.Count - 1; i++)
{
cItem = new RadComboBoxItem(dsLocation.Tables[0].Rows[i]["InterviewFormat"].ToString() + " - " + "Round" + " " + dsLocation.Tables[0].Rows[i]["Rounds"].ToString(), "Sourcing");
cmbExpCTC.Items.Add(cItem);
}
}
}
catch { }
}
您的解决方案会清除列表,因此如果用户再次单击下拉列表,他们将什么都没有。你所要做的就是:
OnClientDropDownClosed="OnComboBoxDropDownClosed"
function OnComboBoxDropDownClosed(sender, args) {
var field = $find('<%=cboBox.ClientID %>');
if (field !== null)
{
var text = cboBox.get_selectedItem().get_text();
field.set_text(text);
}
}
我得到了解决方案,我在RadComboBox中添加了OnClientDropDownClosed javascript函数。
<telerik:RadComboBox ID="cmbExpCTC" runat="server" MarkFirstMatch="true" EnableLoadOnDemand="true" OnClientDropDownClosed="OncmbExpCTCDropDownClosed" >
</telerik:RadComboBox>
function OncmbExpCTCDropDownClosed(sender, args) {
sender.clearItems();
if (args.get_domEvent().stopPropagation)
args.get_domEvent().stopPropagation();
}